wpf comboBox selectedIndex = 0不起作用

时间:2017-03-28 05:37:48

标签: wpf combobox

的.xaml

canUpdate: function(data) {
            console.log(data.pindex);
            this.products[data.pindex].isUpdate = !this.products[data.pindex].isUpdate;
            console.log(typeof this.products[data.pindex].isUpdate);
            console.log(this.products[data.pindex].isUpdate);
            console.log(this.products[data.pindex].id);
        }

这是我的源代码的一部分。 为什么 ' SelectedIndex = 0' 无效? 我想在第一次选择[0]值为默认值,但它在运行时只是空框。除了它之外没有错误。我该如何解决?

4 个答案:

答案 0 :(得分:2)

因为您已经绑定到SelectedItem。它默认绑定两种方式,因此如果绑定到它的属性(SelectInfo)为null,则它也将设置为null。

答案 1 :(得分:1)

正如Hej所说,您已将SelectedItem与视图模型中的属性绑定null

您可以通过在Viewmodel构造函数

中指定SelectedItem来解决此问题
Public MyViewModel()
{
    SelectInfo = InfoCombo[0];
}

答案 2 :(得分:1)

您已将SelectInfo绑定到SelectInfo,您应将值(在您的视图模型中)设置为默认值SelectInfo = InfoCombo[0],例如

{{1}}或其他想要设置为默认值的其他内容

答案 3 :(得分:0)

您还可以SelectedItemSelectedIndex="0"绑定Mode=OneWayToSource

在你的情况下:

<ComboBox Grid.Row="0" 
          Grid.Column="1" 
          x:Name="cbx_srchResOrg" 
          HorizontalAlignment="Stretch" 
          Style="{DynamicResource ComboBoxStyle}"
          ItemsSource="{Binding InfoCombo}" 
          SelectedIndex="0" 
          DisplayMemberPath="Dis_name" 
          SelectedValuePath="Hide_id" 
          SelectedItem="{Binding SelectInfo, Mode=OneWayToSource}"/>

与其他人说的一样,它默认绑定两种方式,因此如果绑定到它的属性(SelectInfo)为null,则它也将设置为null。