C # Xamarin Как обновить статическую строку в метке - PullRequest
0 голосов
/ 26 марта 2019

Я хочу обновить метку статической строкой. Вот мой фактический код

public partial class MainPage : INotifyPropertyChanged
{
    private static String _uploadstring;
    /// <summary>
    /// A static property which you'd like to bind to
    /// </summary>
    public static String Uploadstring
    {
        get
        {
            return _uploadstring;
        }

        set
        {
            _uploadstring = value;

        }
    }

и я хочу позвонить с

        Device.BeginInvokeOnMainThread(async () =>
        {
            Uploadstring = "TEEEEEEST";
        });

вот моя привязка XAML

       <Label Text="{Binding Source={x:Staticlocal:MainPage.UploadString}}" x:Name="ttts"  TextColor="Red" TranslationY="50" HeightRequest="30" FontSize="26" HorizontalOptions="Center"/>

Если я установил точку останова, я вижу, что строка загрузки обновлена ​​в моем XAML. Но он не отображает это, потому что он не обновляет текст. Как я могу решить мою проблему?

1 Ответ

0 голосов
/ 26 марта 2019

как насчет вставки одной строки в Setter?

public static String Uploadstring
{
    get
    {
        return _uploadstring;
    }
    set
    {
        _uploadstring = value;
        Form.ttts.Text = _uploadstring;  // This line (Modified)
    }
}

, если вы не любите использовать это, вам нужно привязать его с помощью режима Twoway

Добавлено

Добавьте это для использования статического метода

    public static MainPage Form { get; set; } // This Line

    public MainPage()
    {
        InitializeComponent();
        Form = this; // And This Line
    }
...