提问者:小点点

如何在使用TextBox筛选listview时忽略大小写


有没有方法修改TextBox的TextChanged事件以忽略已输入的大小写? 当前,在我的listview(包含城镇名称)中,有一个textbox,我希望搜索我想要的任何城镇名称,而不必使用大写字母。

private void txtSearch_TextChanged(object sender, TextChangedEventArgs e)
         {
             if (string.IsNullOrEmpty(txtSearch.Text))
             {
                 this.ListTowns.ItemsSource = this.listItemTowns;
             }
             this.ListTowns.ItemsSource = this.listTowns.Where((item) => { return item.TownTitle.Contains(txtSearch.Text); });
         }

共2个答案

匿名用户

这应该会起作用:

private void txtSearch_TextChanged(object sender, TextChangedEventArgs e)
{
    if (string.IsNullOrEmpty(txtSearch.Text))
    {
        this.ListTowns.ItemsSource = this.listItemTowns;
    }
    else
    {
        this.ListTowns.ItemsSource = this.listTowns.Where(item => item.TownTitle.Contains(txtSearch.Text, StringComparison.OrdinalIgnoreCase));
    }
}

匿名用户

以下几点应该能奏效:

private void txtSearch_TextChanged(object sender, TextChangedEventArgs e)
{
             if (string.IsNullOrEmpty(txtSearch.Text))
             {
                 this.ListTowns.ItemsSource = this.listItemTowns;
             }
             this.ListTowns.ItemsSource = this.listTowns.Where((item) => { return item.TownTitle.ToLower().Contains(txtSearch.Text.ToLower()); });
}

您可以对字符串进行大小写转换。tolower()或。toupper()。

保重