我将 ListView 绑定(bind)到字符串的 ObservableCollection。
Xaml:
<ListView Margin="4" Name="LvRiserList" DockPanel.Dock="Top" ItemsSource="{Binding GetAllRiserTags, UpdateSourceTrigger=PropertyChanged}">
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" HorizontalAlignment="Stretch" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
代码:
public ObservableCollection<string> GetAllRiserTags
{
get
{
var riserTags = new ObservableCollection<string>();
foreach (var riser in RiserCollection)
{
riserTags.Add(riser.Tag);
}
return riserTags;
}
}
当点击一个按钮时,列表被一个接一个地填充,每个标签被赋予默认值“空”。
列表将按预期填充列表,但是当我尝试选择其中一项时出现问题;只有第一个被选中。如果我给标签不同的(唯一的)默认名称,它们会按预期被选中。
知道为什么它会这样吗?
最佳答案
删除 ListView.ItemTemplate 并试一试。
<ListView Margin="4" Name="LvRiserList" DockPanel.Dock="Top" ItemsSource="{Binding GetAllRiserTags, UpdateSourceTrigger=PropertyChanged}">
</ListView>
关于c# - ListView 中具有相同文本/内容的项目的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13885887/