2012-01-13 77 views
0

我正在努力从xml文件中加载组合框项目。 这里是我的代码:将Combobox项目源绑定到xml文件

<Grid> 
    <Grid.Resources> 
     <XmlDataProvider x:Key="ScenesXml" XPath="scenari-list/scenario" Source="http://192.168.40.18/LeafHouse/scenari-appartamento-5.xml"/> 
    </Grid.Resources> 

    <ComboBox Name="scenariCombo" VerticalAlignment="Center" Width="120" 
       ItemsSource="{Binding Source={StaticResource ScenesXml}}" DisplayMemberPath="@name" /> 
</Grid> 

这里是xml文件的简化版本:

<scenari-list> 
    <scenario name="Fuori casa" value="fuori-casa"> 
     ... 
    </scenario> 
    <scenario name="Party" value="party"> 
     ... 
    </scenario> 
    <scenario name="ciao" value="ciao"> 
     ... 
    </scenario> 
</scenari-list> 

我想情景的名字出现在组合框里面。
我发现了代码,我提供了很多问题,但它不适合我。
任何人都可以帮忙吗?

回答

2

XML区分大小写,因此@Name不应产生任何结果,因为该属性的名称为name

=>DisplayMemberPath="@name"

+0

这只是这种样品中的拼写错误。我的代码是正确的,仍然没有给出任何结果。 – andreapier 2012-01-13 17:26:43

+0

如果你的代码*是正确的,它会给你结果。那么如何发布**你的实际代码**呢? – 2012-01-13 17:28:47

+0

我的实际代码与我上面发布的相同,我只是写了一个错字。我认为再次编写它不会有帮助。无论如何,谢谢你指出,以便我纠正错字。 – andreapier 2012-01-13 17:34:09