2012-10-11 56 views
0

XamComboEditor itemssource设置为List,它不显示实际字符串,而是显示其长度。我如何让它显示列表中的实际字符串。WPF infragistics XamComboEditor显示string.Length显示字符串的绑定列表

<Infragistics:XamComboEditor x:Name="cboSearchMemberMultiSelect" CheckBoxVisibility="Visible" Grid.Column="1" HorizontalAlignment="Left" Height="24" Margin="2" Width="150" Visibility="Collapsed" AllowMultipleSelection="True" SelectionChanged="cboSearchMemberMultiSelect_SelectionChanged" /> 

在XAml.cs

private List<string> StudentTypeItems() 
    { 
     List<string> list = new List<string>(); 
     list.Add("Student"); 
     list.Add("Ambassador"); 
     list.Add("Crew"); 
     return list; 
    } 

cboSearchMemberMultiSelect.ItemsSource = StudentTypeItems();

这是只显示值的问题。但除此之外,如果我调试我可以像往常一样看到项目。这很奇怪。

+0

你能展示代码吗? – Steve

回答

1

我对这种行为的看法是。 WPF绑定系统只会与类的属性绑定,并且字符串列表基本上是一个String类的List,这意味着绑定的项需要使用String类的属性来完成。而String类只有Length属性。这就是为什么它默认绑定长度属性。

如果您创建新的类。说雇员并添加一个名称属性。现在创建一个员工列表,然后listbox的子元素可以与Employee类的name属性结合使用。

希望这可以解决您的问题。

+0

不,它不可能,你可以用普通的组合框检查,它不会有任何问题。问题是Infragistics的组合框控件与WPF不同。 – Ershad

+1

XamComboEditor不支持绑定到简单类型,如字符串,整数等。如果遇到此问题或任何其他问题,最好的做法是将字符串包装到自定义对象中,并将显示成员路径设置为指向字符串prop包含应该显示的字符串。 – JSJ

+0

非常感谢:) – Ershad

相关问题