Обязательный вопрос для новичка WPF - PullRequest
1 голос
/ 01 сентября 2011

Потратив день на поиски ответа на мой вопрос, я, наконец, задам вопрос. :)

Прочитав страницы справочника в MSDN, я обнаружил, что наконец-то могу удалить эти хвалебные процедуры заполнения форм и подключить каждое поле (TextBox, CheckBox и т. Д.) К любому выбранному мной свойству.

У меня есть класс ArticleItem, который обрабатывает все данные в этом случае.

VB код:

  Public ArtItem as New ArticleItem

  Private Sub LookUpArt()
    If txtArtNo.Text.Length > 0 then
      ArtItem.Load(txtArtNo.Text)
    End If
  End Sub

XAML:

<Page DataContext="{Binding RelativeSource={RelativeSource Self}}">

<!-- ... -->

<TextBox x:Name="txtDescr" Text="{Binding ArtItem, Path=Descr}" />

Теперь у меня нет проблем с заполнением списков, но я не получаю никакой реакции в своем текстовом поле.
Чего мне не хватает?

1 Ответ

5 голосов
/ 01 сентября 2011

ArtItem - это поле, которое нельзя привязать к полям, только к общедоступным свойствам.Далее вам необходимо внедрить INotifyPropertyChanged, если оно изменится после инициализации, иначе привязка не будет обновлена.

Редактировать: Ваша привязка нарушенаКроме того, вы устанавливаете путь дважды , он должен быть {Binding ArtItem.Descr} или {Binding Path=ArtItem.Descr}, который совпадает, Descr также должен быть публичным свойством и ArtItem также должен реализовывать интерфейс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...