我有一个这样的课程:
class MyClass
{
public int ID{ get; set; }
public string Title{ get; set; }
}
目前我正在将它绑定到AutoCompleteBox,如下所示:
List<MyClass> lstMyClass = new List<MyClass>();
lstMyClass = context.Sometable;
autoCompleteBox1.ItemsSource = lstMyClass;
autoCompleteBox1.ValueMemberPath = "Title";
autoCompleteBox1.PopulateComplete();
它通过标题查找对象,但在自动完成部分中,它显示了类定义而不是项目标题。有什么想法吗?
答案 0 :(得分:3)
您可以使用ItemTemplate
(msdn)。
<controls:AutoCompleteBox x:Name="autoCompleteBox1"
FilterMode="Contains"
IsTextCompletionEnabled="True">
<controls:AutoCompleteBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Title}" />
</DataTemplate>
</controls:AutoCompleteBox.ItemTemplate>
</controls:AutoCompleteBox>
答案 1 :(得分:1)
您可以在MyClass中覆盖ToString()方法,以便它返回Title。