-2
选择列表中的第一个项目我有使用使用的SelectedIndex
<ComboBox x:Name="combo"
SelectedIndex="0"
ItemsSource="{Binding comboBoxSelections, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"
DisplayMemberPath="Key"
IsEditable="True" >
默认为从的ItemsSource列表中的第一项。然而组合框,下面不正确绑定到一个DataTable。
当我将绑定添加到SelectedValue时,它现在可以正确绑定,但不再默认为第一项;
SelectedIndex="0"
现在没有工作
<ComboBox x:Name="combo"
SelectedValue="{Binding Selection, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectedIndex="0"
ItemsSource="{Binding comboBoxSelections, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"
DisplayMemberPath="Key"
IsEditable="True" >
是否有可能在初始化仅XAML的价值?
我不认为我可以从构造为combo
设置它不是一个单一的组合框,但一个DataGridComboBoxColumn
<DataGrid.Columns>
<DataGridComboBoxColumn Header="Department Id" x:Name="comboboxColumn1"
SelectedValueBinding="{Binding Department Id}" />
<DataGridTemplateColumn x:Name="DataGridTempCol" Header="Selection">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
x:Name="combo"
SelectedValue="{Binding Selection, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding comboBoxSelections, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"
DisplayMemberPath="Key"
IsEditable="True" >
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
墙代码花花公子。 – Paparazzi
所以XAML可以设置它,但你不能在代码中设置它?真? – Paparazzi
@Blam - 我必须承认C#对我来说是非常新的,所以我仍然感觉我的方式,可能会问明显的(愚蠢的)事情。这不是故意的。我的代码在DataGrid中定义了一个DataColumn,并且XAML绑定了一个Combobox,所以在该列的每一行都有ComboBox。我看不到如何在代码中设置'combo' SelectedItem =“0”? – user3357963