我需要在最后一个列表框项目中添加ID (x:Uid="identifier")
。我的列表框项目通过数据源填充,如下所示:
<ListBox x:Name="listbox1" Grid.Row="1" BorderThickness="0"
ItemsSource="{SomeBinding}">
可以在xaml中完成吗?
答案 0 :(得分:1)
我不确定你想如何实现它,但这里有一些解决方案。
我认为你只需要ListBox中第一个和最后一个项目的ID。不确定你可以在没有太多工作和头痛的情况下在xaml中做到这一点。 你已将它绑定到某个对象。 让我们说:
XAML:
<ListBox x:Name="listbox1" ItemsSource="{Binding Items}"/>
代码背后:
private ObservableCollection<Item> _Items;
public ObservableCollection<Item> Items
{
get { return _Items; }
set { _Items = value; }
}
所以你可以这样做:
private void Button_Click(object sender, RoutedEventArgs e)
{
var firstItem = Items[0];
var lastItem = Items[Items.Count - 1];
}
答案 1 :(得分:0)
继承自ListBox
您的自定义类。覆盖受保护的方法..不太记得哪个是名称......关于.GetContainerFor(...)
的内容。从那里你可以返回new ListBoxItem()
并根据你的喜好进行设置。