listboxitem 内部送信者に奇妙な状況が発生しました (この送信者に責任があると思いますが、よくわかりません...)
ListBox のItemTemplateがあります。
<ListBox x:Name="list">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel x:Name="stack_panel">
<Image Source="{Binding ImageSource}" Tap="Image_Tap"></Image>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
ListBox のすべてのアイテムには、タップイベントのある画像があります。
private void Image_Tap(object sender, GestureEventArgs e)
{
Image i = (Image)sender;
i.Source = new BitmapImage(new Uri("Images/yellow.png", UriKind.RelativeOrAbsolute));
}
また、画像を簡単に変更するためのクラスもあります。
public class listItems
{
public string ImageSource { get; set; }
}
右。これで、リストボックスにいくつかの要素を追加する準備ができました:
for (int i = 0; i < 100;i++)
list.Items.Add(new listItems
{
ImageSource = "Images/black.png"
});
それでは、ゼロ番目の太陽の画像をクリックしてみましょう。
全て大丈夫!続けて、2 番目の画像をクリックします。
ええ、太陽が輝いています..しかし..やめて、それは何ですか?0_o
このアイテムをクリックしていませんが、これのイメージが変わりました! これは、アイテムだけでなく、他のランダムなアイテム (53、81、...) でも発生します。
これについてあなたはどう思いますか?送信者は多くの要素を参照できますか?