我想检索在组合框中选择的字符串值并将其转换为整数,但是 SelectedItem 方法总是返回对象的名称。其他帖子建议使用 SelectedItem 的 Content 属性,但在使用 .net 4.6.1 的 vs2017 中我无法使用它。有人可以帮助我在不解析字符串的情况下获取值吗?这是 Xaml,后跟 cs 文件:<ComboBox x:Name="Combo_BaudRate" SelectedValuePath="Content" HorizontalAlignment="Left" VerticalAlignment="Top" Width="120" Margin="112,81,0,0" SelectionChanged="ComboBox_SelectionChanged" IsReadOnly="True" > <ComboBoxItem Content="1200" /> <ComboBoxItem Content="2400" /> <ComboBoxItem Content="4800" /> <ComboBoxItem Content="9600" /> <ComboBoxItem Content="38400" /></ComboBox>private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e){ Selected_Port_Baudrate = Combo_BaudRate.SelectedItem.ToString(); }
1 回答
慕沐林林
TA贡献2016条经验 获得超9个赞
SelectedItemComboBox返回第一个选择的ComboBoxItem.
您想要获取所选项目的属性值,而不是项目本身。所以你应该SelectedValue结合使用SelectedValuePath来绑定属性值并将其转换为适当的类型:
int selectedBaudRate = int.Parse(Combo_BaudRate.SelectedValue.ToString());
请注意,基础类型SelectedValue是string因为您将ComboBoxItem属性指定Content为SelectedValuePath。
如果不同时设置SelectedValuePathand SelectedValue,SelectedValue将包含与 相同的对象SelectedItem。
- 1 回答
- 0 关注
- 145 浏览
添加回答
举报
0/150
提交
取消
