リストビューを文字列の 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;
}
}
ボタンがクリックされると、リストは 1 つずつ読み込まれ、各タグにはデフォルト値の「空」が与えられます。
リストは期待どおりにリストに入力されますが、項目の 1 つを選択しようとすると問題が発生します。最初の 1 つだけが選択されます。タグに異なる (一意の) デフォルト名を付けると、期待どおりに選択されます。
なぜこのように振る舞うのか、何か考えはありますか?