Я пытаюсь получить выбранное значение поля со списком, но у меня возникла странная проблема.
Я пробовал:
myCombo.SelectedItem.ToString()
и я возвращаю значение:
System.Windows.Controls.ComboBoxItem: myValue.
Я тогда попробовал:
ComboBoxItem item = ((ComboBoxItem)myCombo.selectedItem);
item.content.toString();
Это работает нормально, если выбранный индекс равен 0 или 1. Однако, если выбран любой из других индексов, он отображает исключение:
InvalidCastException не обработан. Невозможно обработать объект типа
'System.String' для ввода 'System.Windows.Controls.ComboBoxItem'
Единственная разница между индексами 0 и 1 и остальными состоит в том, что индексы 0 и 1 добавляются вручную через XAML, тогда как остальные добавляются программно из запроса к базе данных, как показано ниже:
string myValue = reader["my_table_column"].toString();
myCombo.Items.Add(myValue);
Спасибо за любую помощь, вы можете предоставить
UPDATE
Как просит Уэйн Таннер ниже, это фрагмент XAML для поля со списком
<ComboBox Height="23" HorizontalAlignment="Left" Margin="26,6,0,0" Name="cboIVRGroup" SelectedIndex="0" VerticalAlignment="Top" Width="143" SelectionChanged="cboIVRGroup_SelectionChanged">
<ComboBoxItem Content="All IVRs" />
<ComboBoxItem Content="Unassigned IVRs" />
</ComboBox>r the combo box