С этим кодом событие SelectionChanged
не будет инициировано. Создайте новый проект, вставьте его и попробуйте сами.
Мое предположение почти такое же, как у Sekhar _ Pro , вы заполняете свой ComboBox
из кода позади, и что-то там вызывает изменение SelectedItem ,
Исследуйте cmbUsers.SelectedItem
в обработчике cmbUsers_SelectionChanged
, чтобы увидеть, имеет ли оно какое-либо значение или равно нулю в отладчике. Кроме того, посмотрите в стеке вызовов, чтобы найти причину возникновения этого события.
Пример кода
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
cmbUsers.Items.Add(new ComboBoxItem { Content = "Test" });
cmbUsers.SelectedIndex = 0;
}
private void cmbUsers_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (cmbUsers.SelectedItem != null)
{
MessageBox.Show(cmbUsers.SelectedItem.ToString());
}
}
}
Стек вызовов выглядит для меня в обработчике событий