Xamarin Forms привязывает свойство к тексту метки

у меня есть Xamarin Forms xaml:

// MainPage.xaml
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:BlankAppXamlXamarinForms"
             x:Class="BlankAppXamlXamarinForms.MainPage">

<Label Text="{Binding myProperty}" />

</ContentPage>

и у меня есть код:

// MainPage.xaml.cs
namespace BlankAppXamlXamarinForms {
    public partial class MainPage : ContentPage
    {
        public string myProperty= "MY TEXT";

        public MainPage()
        {
            InitializeComponent();
            BindingContext = this;
        }
    }
}

он должен привязать myProperty к тексту метки. Однако в метке ничего не отображается. Как привязать myProperty к тексту метки? (Я знаю, что должен использовать ViewModel, чтобы иметь возможность уведомлять представление об изменениях свойства, но в этом примере я действительно просто хочу привязать myProperty из кода сзади к метке)

1 ответов


вам нужно объявить, что вы можете "получить" переменную.

public string myProperty { get; } = "MY TEXT";

Если вы действительно хотите изменить эту переменную в коде, ваш класс должен будет реализовать INotifyPropertyChanged, иначе он всегда будет "мой текст"