Доступ к последним привязанным данным ListBoxItem - PullRequest
0 голосов
/ 21 ноября 2011

Я работаю над приложением WP7, в котором я использую предварительно заполненную базу данных SQLCE. Поэтому я использую много элементов управления с привязкой к данным. Прямо сейчас я немного в беде. Короче говоря: мне нужно получить доступ к последнему элементу ListBoxItem (не бизнес-объекту) ListBox с привязкой к данным и изменить некоторые свойства, такие как поле этого последнего элемента. Я не смог получить этот элемент, используя методы класса VisualTreeHelper или что-то вроде

(myListBox.Items.Last() as ListBoxItem).Margin = new Thickness(0, 0, 0, 0);

потому что myListBox.Items кажется нулевым (!?)

Происходит какая-то черная магия, так есть ли простой способ? Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 22 ноября 2011

Вместо того, чтобы пытаться манипулировать пользовательским интерфейсом непосредственно в коде, почему бы просто не изменить элементы, привязанные к списку данных, и добавить свойство, чтобы указать, является ли оно последним.Затем вы можете использовать это свойство в DataTemplate для управления тем, как оно должно отображаться.

1 голос
/ 22 ноября 2011

Вы пытались получить доступ к ListBoxItem через ItemContainerGenerator?

((ListBoxItem)myListBox.ItemContainerGenerator.ContainerFromIndex(myListBox.Items.Count-1)).Margin = new Thickness(42, 0, 0, 0);

Это должно работать.В противном случае что-то не так с вашей привязкой.

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