【问题标题】:WPF add Search Function to ListWPF 将搜索功能添加到列表
【发布时间】:2019-01-29 07:30:44
【问题描述】:

我创建了一个“学徒”类型的列表,其中姓名、ID 和职业等内容存储在每个“学徒”对象中。在 WPF 中,我在 ListView 中向学徒展示他们的图片和姓名。现在我添加了一个文本框,您可以在其中搜索学徒的姓名。到目前为止,我得到的只是这个:

private void TextBox_TextChanged(object sender, System.Windows.Controls.TextChangedEventArgs e)
    {
        SortedListByName.Find(x => x.Name == searchBox.Text);
    }

这会找到我的学徒,当我完整且正确地输入名称时,例如“John Doe”。如果他们不以给定字母开头,我希望它过滤每个学徒。例如,列表中有“John Doe”、“Jane Doe”、“Michael Myers”和“Freddie Krueger”。当我开始输入“D”时,将不再显示“Michael Myers”和“Freddie Krueger”,只有 John 和 Jane,因为他们的姓氏以“D”开头。或者,通过名称中的每个相似性来搜索列表。如果我输入“ers”,那么它会显示“Michael Myers”。但我不知道如何开始

【问题讨论】:

    标签: c# wpf listview


    【解决方案1】:
    private void TextBox_TextChanged(object sender, System.Windows.Controls.TextChangedEventArgs e)
    {
        SortedListByName.Where(x => x.Name.ToUpper().StartsWith(searchBox.Text.ToUpper());
    }
    

    ToUpper() 允许您查找忽略大小写的项目。 此函数将为您提供一组项目作为输出,这些项目从您在文本框中输入的字符开始。您可以选择将 StartsWith() 方法替换为 Contains() 或 EndsWith() 方法

    【讨论】:

      猜你喜欢
      • 2015-01-04
      • 1970-01-01
      • 2017-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多