Минимальная привязка TextBlock к свойству - PullRequest
0 голосов
/ 25 июня 2019

Прошло некоторое время с тех пор, как я что-то кодировал в XAML, и, пытаясь обновить старое приложение, я остановился на проблеме с привязкой. Я лишил все, чтобы прийти к минимальному примеру.

Вот мое тело XAML:

<Grid>
    <TextBlock Text="{Binding Path=PageTitle, ElementName=page, Mode=OneWay}"></TextBlock>
</Grid>

Мой код имеет это:

Public ReadOnly Property PageTitle As String
    Get
        Return "My page"
    End Get
End Property

Я считаю, что это минимальный код (хорошо, исключая Mode=OneWay part, так как мы говорим о TextBlock), необходимый для привязки этого содержимого TextBlock к свойству на его базовой странице, но он не работает, и я пришел с пустым TextBlock. Get код моего свойства PageTitle никогда не вызывается.

Я даже дошел до реализации INotifyPropertyChanged, объявив:

Public Event PropertyChanged As PropertyChangedEventHandler Implements  INotifyPropertyChanged.PropertyChanged

и затем повышение RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs("PageTitle")) в моем OnNavigatedTo коде, но безрезультатно.

Итак, что за простая вещь, которую мне здесь не хватает?

1 Ответ

0 голосов
/ 25 июня 2019

Вы установили Name из Page?

Однако, если свойство определено в выделенном коде представления, вы можете использовать x: Bind без установки DataContext:

<TextBlock Text="{x:Bind PageTitle, Mode=OneWay}" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...