问题背景:
在我的WPF应用程序中,其中一个窗口/页面包含3个列表框和1个ComboBox。这三个ListBox与XML dataprovider捆绑在一起,没有任何问题。我的意思是当第一个列表框选择更改自动更新listbox2。以同样的方式,listbox3更新为listbox2更改。这些都是单独在XAMl文件中解决的,除了InitializeComponent()之外还有代码隐藏,还有几行代码用于使用XAMLReader动态加载这个XAML文件(这是我的要求)
面临的问题要求:
任何ListBox的OnSelection更改事件,需要动态填充ComboBox数据(它将触发基于上述3 LisBox选择的webservices)。为此,在SelectionChange中我试图获得
ListBoxObj.SelectedItem - Always contains XML tree.(i.e) of type XMLElement
我已经尝试了所有可能性,无处不在我只获得XML树。
任何人都有任何想法,如何从XMLElement中提取ListBox选择的项目文本?
是否有快速方法将我的XmlElement树转换为选定的文本, (或)我是否必须调用序列化程序并手动执行?
P.S: 对我来说,XAML文件是唯一的输入,所以我不知道ListBox映射到什么值。我不知道ListBox是否映射到元素/属性。 首先,我需要从XAML文件中提取映射信息并手动解析XML树。
由于
答案 0 :(得分:0)
要从XmlElement
获取文本部分,请查看InnerText
属性:
var selectedXml = (XmlElement)ListBoxObj.SelectedItem;
var selectedText = selectedXml.InnerText;
//do something useful with selectedText variable here