[WPF]コンボボックスのリストを変更した時にselectedItemを見失うのを防ぐ
コンボボックスのリストの中身を変更(ソートとか)した時にselectedItemを見失うのを防ぐ。Tagプロパティを一時保存に使用するのであまり美しくない?
private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var combo = (ComboBox)sender;
object item = combo.SelectedItem;
if (item == null)
{
combo.SelectedItem = combo.Tag;
}
else
{
combo.Tag = combo.SelectedItem;
}
}