Понятно, что если вы хотите, чтобы получить контейнер из элемента в ListBox вы можете использовать:Как получить связанные данные с помощью контейнера?
ListBoxItem lbi1 = (ListBoxItem)(listBox.ItemContainerGenerator.ContainerFromIndex(0));
(Источник: http://bea.stollnitz.com/blog/?p=7)
Предполагая выше ListBox был привязан к списку, как могу ли я сделать наоборот? Как и в, что, если я хотел бы получить данные данных в списке с помощью контейнера (lbi1
в приведенном выше примере)?
Хорошо, я думаю, что я нашел ответ :) Для элементов ListBox или других подобных ContentControls данные могут быть получены следующим образом: Данные класса = (класс) lbi1.Content; Для других элементов управления, таких как TreeViewItems, поскольку они не являются ContentControls, данные могут быть получены путем доступа к DataContext: Данные класса = (класс) treeViewItem.DataContext; – SalGad