如何在 ComboBox 中显示当前选定的项目?选择哪个项目的信息存储在 XML 文件中。
它在应用程序启动时的外观:
它在应用程序启动时的外观:
XML 数据源如下所示:
<Contact>
<Name>John</Name>
<Lastname>Doe</Lastname>
<Gender>Male</Gender>
</Contact>
这就是我尝试过的(在许多其他变体中)
<ComboBox SelectedItem="{Binding XPath=Contact/Gender, Mode=TwoWay}" Name="cmbGender" Width="100" >
<ComboBoxItem Content="Male" />
<ComboBoxItem Content="Female" />
</ComboBox>
我想这就是没有 XmlDataProvider 的方式。有没有办法用 XPath 表达式设置 IsSelected?
<ComboBox Name="cmbGender" Width="100" >
<ComboBoxItem Content="Male" IsSelected="True"/>
<ComboBoxItem Content="Female" />
</ComboBox>
编辑: 这就是我设置数据源的方式:
<Grid>
<Grid.DataContext>
<XmlDataProvider x:Name="DataProvider" XPath="/" />
</Grid.DataContext>
// Binding is working fine
<TextBox Name="txtLastname" Width="100" Text="{Binding XPath=Contact/Lastname, UpdateSourceTrigger=PropertyChanged}" />
// not working
<ComboBox SelectedItem="{Binding XPath=Contact/Gender, Mode=TwoWay}" Name="cmbGender" Width="100" >
<ComboBoxItem Content="Male" />
<ComboBoxItem Content="Female" />
</ComboBox>
</Grid>