这是我的 xaml 的一个片段:

    <ComboBox x:Name="cbo1" Width="100" SelectedValue="200">
        <ComboBoxItem Name="n1">100</ComboBoxItem>
        <ComboBoxItem Name="n2">200</ComboBoxItem>
    </ComboBox>

为什么这不起作用?我运行它时没有选择“200”。
理想情况下,我正在尝试执行 SelectedValue="{Binding MyValue}"。

最佳答案

在这种情况下,选定的值来自 ComboBoxItem 类型,而不是您希望的整数或字符串。

那么你能做些什么呢?组合框存在一个属性,该属性定义了所选对象的哪个属性应用作值,哪个用作 DisplayMember(可视化)

在您的情况下,您必须将 SelectedValuePath 设置为“内容”。 (在您的情况下,200 是 ComboBoxItem 的内容)

例子:

<ComboBox x:Name="cbo1" Width="100" SelectedValue="200" SelectedValuePath="Content">
    <ComboBoxItem Name="n1">100</ComboBoxItem>
    <ComboBoxItem Name="n2">200</ComboBoxItem>
</ComboBox>

关于.net - 在 xaml 中为组合框设置 selectedvalue 时出现问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5146396/

10-13 08:47