Я добавил новый ComboBox для изменения темы. И когда я выбираю элемент, он работает хорошо, выбор изменяется, но когда я получаю текст из этого ComboBox, он возвращает другой текст элемента в ComboBox. Я не знаю, в чем проблема, я заметил это, добавив отладку TextBox и печать внутри Text из ComboBox при событии, когда я меняю выбор.Комбобокс текст дает фальшивую информацию
Вот код:
private void Themecb_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (themeedit == 1)
{
String txt = Themecb.Text;
TextBox1.Text = "THEME WORK " + txt;
Tuple<AppTheme, Accent> appStyle = ThemeManager.DetectAppStyle(Application.Current);
ThemeManager.ChangeAppStyle(Application.Current,
ThemeManager.GetAccent(txt),
ThemeManager.GetAppTheme("BaseLight")); // or appStyle.Item1
}
}
А вот XML файл:
<ComboBox x:Name="Themecb"
HorizontalAlignment="Left"
Margin="237,227,0,0"
VerticalAlignment="Top"
Width="120"
SelectionChanged="Themecb_SelectionChanged"/>
Вы пытались получить значение по свойству SelectedItem? Попробуйте заменить строку 'String txt = Themecb.Text;' на 'String txt = Themecb.SelectedItem в виде строки;' пожалуйста и сообщите мне, если она также возвращает неправильное значение. –
Спасибо, что сработало для меня! –
Рад знать, что это помогло! Я опубликую этот комментарий в качестве ответа, пожалуйста, отметьте его как правильно. –