Я пытаюсь изучить WPF, распутывая откровенно кошмарный проект, написанный парнем, который был на этой работе передо мной. Извините, если некоторые из моих вопросов в значительной степени являются домашним заданием, но я пытаюсь выяснить, что делает существующий XAML, с недостаточным пониманием концепций, стоящих за ним ...Что означает «ItemsSource =" {Binding} "?
В любом случае, у меня есть ListView с этим как часть его определения:
<ListView
DataContext="{StaticResource XMLFileGroups}"
ItemContainerStyle="{StaticResource XMLItemStyle}"
ItemsSource="{Binding}">
Теперь я могу получить вид вокруг моей головы, что «DataContext» и «ItemContainerStyle» линии делают; они, как представляется, ссылаются на метод сортировки существующего списка и структуру, определяющую некоторое визуальное поведение ListView, соответственно.
Что меня разрушает, так это тот факт, что ItemsSource указан как «{Binding}». Все, что говорит мне, что есть какая-то привязка данных на месте, но я не понимаю, как линия может быть значимой, и при этом ее удаление останавливает отображение любых данных.
Может кто-то пролить свет на то, что здесь происходит, или где я должен искать фактическое определение привязки? Я просто не понимаю, что вижу.
Таким образом, «{Binding}» специально связывается с коллекцией, созданной свойством DataContext ListView? Это что-то, что обычно происходит для объектов типа View или оно специфично для ListView? Извиняюсь за попрошайничество для получения дополнительной информации, но я уверен, что вы можете оценить, что поиск «ItemsSource =» {Binding} «не является достаточно узким поиском для меня, чтобы получить много результатов, поэтому я задал этот вопрос в первом место ... – Frosty840
Я не уверен, что вы просите. '{Binding}' может использоваться в любом контексте, где значением, которое вы хотите связать, является сам DataContext. Он чаще всего используется для привязки DataSource. – SLaks
Я думал, что это так, но я не мог быть уверен. Спасибо за разъяснения. – Frosty840