首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Xml数据源(XmlDataProvider)中设置选定的XmlDataProvider

从Xml数据源(XmlDataProvider)中设置选定的XmlDataProvider
EN

Stack Overflow用户
提问于 2013-04-10 13:05:29
回答 1查看 396关注 0票数 1

如何在ComboBox中显示当前选定的项?所选项的信息存储在XML文件中。

如何看待应用程序启动:

如何看待应用程序启动:

XML数据源如下所示:

代码语言:javascript
复制
<Contact>
  <Name>John</Name>
  <Lastname>Doe</Lastname>
  <Gender>Male</Gender>
</Contact>

这就是我尝试过的(在许多其他变体中)

代码语言:javascript
复制
<ComboBox SelectedItem="{Binding XPath=Contact/Gender, Mode=TwoWay}" Name="cmbGender" Width="100" >
   <ComboBoxItem Content="Male" />
   <ComboBoxItem Content="Female" />
</ComboBox>

我想这就是没有XmlDataProvider的情况下你所做的事情。是否有一种使用IsSelected表达式设置XPath的方法?

代码语言:javascript
复制
<ComboBox Name="cmbGender" Width="100" >
   <ComboBoxItem Content="Male" IsSelected="True"/>
   <ComboBoxItem Content="Female" />
</ComboBox>

编辑:,这是我如何设置Datasource的:

代码语言:javascript
复制
<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>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-10 14:09:40

Text属性是关键,它是这样工作的:

代码语言:javascript
复制
<ComboBox Text="{Binding XPath=Contact/Gender, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" Name="cmbGender" Width="100">
     <ComboBoxItem Content="Male" />
     <ComboBoxItem Content="Female" />
</ComboBox>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15926692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档