我正在自动化Silverlight应用程序进行测试。 我有一个拥有1000个值的Silverlight组合框。
我可以按索引选择值,但不能通过传递实际值。
另外,如果我尝试获取组合框的内容,它会以数据模板对象的形式显示一些xyz.DTO。
我没有开发知识,所以我无法理解datatemplate概念并对其进行解码。
有人可以帮助我理解如何从组合框而不是代码中检索实际值,或者如何通过传递值而不是索引来选择值。
感谢有人能提供快速建议。
谢谢, SlvAutomator
答案 0 :(得分:1)
您可以通过以下操作选择组合框项目的内容属性:
string content = ((ComboBoxItem)comboBox.Items[index]).Content.ToString();
要使用Content属性选择项目,您需要在组合框中指定 SelectedValuePath :
<ComboBox x:Name="comboBox" Width="100" Height="100" SelectedValuePath="Content">
<ComboBoxItem Content="Blue"/>
<ComboBoxItem Content="Black" />
<ComboBoxItem Content="Dark Red" />
</ComboBox>
然后在后面的代码中你可以选择这样的值:
comboBox.SelectedValue = "Black";