В этом случае вы должны использовать ComboBox.SelectedItem
, как упомянуто Крисом Тейлором. Но будьте осторожны с установкой IsSelected
свойства ComboBoxItem
в XAML, потому что если вы сделаете это следующим образом:
<ComboBox Height="23"
HorizontalAlignment="Left"
Margin="12,67,0,0"
Name="comboBox1"
VerticalAlignment="Top"
Width="112"
SelectionChanged="comboBox1_SelectionChanged">
<ComboBoxItem Content="Pokey"
IsSelected="True" />
<ComboBoxItem Content="Octo-ooze" />
<ComboBoxItem Content="Bolt" />
<ComboBoxItem Content="Fink" />
</ComboBox>
<TextBox Name="tbMinutes" />
<TextBox Name="tbSeconds" />
Вы получите NullReferenceException
, поскольку при вызове InitializeComponents
компоненты инициализируются в порядке, определенном в XAML. Если ваш первый ComboBoxItem инициализирован, происходит событие. Но текстовые поля не инициализируются и обнуляются, что приводит к исключению.
Один из подходов к решению этой проблемы может быть, если вы поместите TextBox перед ComboBox в XAML, но гораздо лучший подход будет, если вы подключите событие ComboBox в коде так:
public MainWindow()
{
InitializeComponent();
comboBox1.SelectionChanged += comboBox1_SelectionChanged;
}