Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF组合框SelectionItemBox提示字符串_C#_Wpf_Combobox - Fatal编程技术网

C# WPF组合框SelectionItemBox提示字符串

C# WPF组合框SelectionItemBox提示字符串,c#,wpf,combobox,C#,Wpf,Combobox,所以我在这个论坛上搜索,但找不到anwser 我正在将组合框绑定到用户列表。但是当我想输入一个名字的时候,一些古怪的东西就出来了 XAML代码: <ComboBox Name="UserLoginCmbBox" Width="100" IsEditable="True" SelectionChanged="UserLoginCmbBox_SelectionChanged"> <ComboBox.ItemTemplate>

所以我在这个论坛上搜索,但找不到anwser

我正在将组合框绑定到用户列表。但是当我想输入一个名字的时候,一些古怪的东西就出来了

XAML代码:

 <ComboBox Name="UserLoginCmbBox" Width="100" IsEditable="True" SelectionChanged="UserLoginCmbBox_SelectionChanged">
          <ComboBox.ItemTemplate>
               <DataTemplate>
                    <TextBlock Text="{Binding Login}"/>
               </DataTemplate>
          </ComboBox.ItemTemplate>
 </ComboBox>

代码隐藏代码:

var users = new List<User>{...} //initialization           
UserLoginCmbBox.ItemsSource = users;
var users=新列表{…}//初始化
UserLoginCmbBox.ItemsSource=用户;
当我在框中键入时,我能得到的唯一字符串是:

System.Data.Entity.DynamicProxies.User_FE59351B6479342209B496E7D3C3B877DDC51FE15279FFFEF899A5012F85FCBA

我发现这是ToString()方法返回的结果,但是如果我想在另一个组合框中为expamle使用相同的列表,在该组合框中选择名称或其他内容,该怎么办


如何修改SelectionItemBox?原因当我尝试使用SelectionItemBoxTemplate编写自己的模板时,发生了一个错误(SelectionItemBoxTemplate只有getter)。

尝试将
DisplayMemberPath
属性设置为“Login”:



错误:无法同时设置ItemTemplate和DisplayMemerPath根据我的示例标记删除ItemTemplate。照原样复制即可。请记住接受答案:
<ComboBox Name="UserLoginCmbBox" Width="100" IsEditable="True" SelectionChanged="UserLoginCmbBox_SelectionChanged" DisplayMemberPath="Login" />