如何选择包含文本框的项目。从文本框搜索到ListView

moxmlb

我想获取包含搜索文本的项目。Lisview应该在带有movieTitle的列表视图中向我显示包含搜索文本的项目(文本)。我有这个网格:

<Grid x:Name="GridSearchMovie" Grid.Row="2" Visibility="Hidden" Background="White">
        <Grid.RowDefinitions>
            <RowDefinition Height="25"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
        <TextBox x:Name="txtSearchMovie" TextChanged="txtSearch_TextChanged"/>
        <ListView x:Name="lvSearchMovie" Grid.Row="1">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <WrapPanel>
                        <TextBlock Text="{Binding movieTitle}"/>
                    </WrapPanel>
                </DataTemplate>
            </ListView.ItemTemplate>
            <ListView.ItemContainerStyle>
                <Style TargetType="ListViewItem">
                    <Setter Property="Height" Value="50"/>
                </Style>
            </ListView.ItemContainerStyle>
        </ListView>
    </Grid>

我在文本框中键入一个单词,然后Lisview向我显示包含Textbox.Text的项目。这是搜索代码:

lvSearchMovie.ItemsSource = Movies;

            TextBox t = (TextBox)sender;
            string Filter = txtSearchMovie.Text;
            ICollectionView cv = CollectionViewSource.GetDefaultView(lvMovies.ItemsSource);
            cv.Filter = o =>
                {
                    Movie m = o as Movie;
                    return (m.movieTitle.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieDirector.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieActor.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieGenre.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieTime.ToString().ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieDate.ToString().ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieStudio.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieFSK.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieRating.ToUpper().Contains(Filter.ToUpper()) ||
                        m.movieSeenTo.ToUpper().Contains(Filter.ToUpper()));
                };

我想将一个文本块添加到列表视图项目WrapPanel中,该WrapPanel显示包含单词。我如何得到这些包含Textbox.Text的单词?

电影课:

public class Movie
{
    public int movieID;
    public string moviePicture;
    public string movieTitle {get; set;}
    public string movieDirector;
    public string movieActor;
    public string movieGenre;
    public string movieTime;
    public string movieDate;
    public string movieStudio;
    public string movieFSK;
    public string movieRating;
 }

列出电影:

List<Movie> Movies = new List<Movie>();
黑暗圣堂武士

好的第一步是将列表更改为可观察的集合,因为列表不会更新您的UI。试试这个:

ObservableCollection<Movie> Movies = new ObservableCollection<Movie>();

现在,只需将其添加到您想要的任何事件中即可。

            foreach (var item in cv)
            {
              if (cv.Any(x => m.movieTitle.ToUpper() == Filter.ToUpper()  )
                 { item.movieTitle = txtSearchMovie.Text;}
              if (cv.Any(x => m.movieDirector.ToUpper() == Filter.ToUpper()  )
                 { item.movieDirector = txtSearchMovie.Text;}
              if (cv.Any(x => m.movieActor.ToUpper() == Filter.ToUpper()  )
                 { item.movieActor = txtSearchMovie.Text;}
              if (cv.Any(x => m.movieGenre.ToUpper() == Filter.ToUpper()  )
                 { item.movieGenre = txtSearchMovie.Text;}
              Movies.Add(item);
            }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法将ListView项目显示到文本框

来自分类Dev

按列搜索Listview以查找匹配或包含文本框文本的记录,并删除不匹配的记录

来自分类Dev

按列搜索Listview以查找匹配或包含文本框文本的记录,并删除不匹配的记录

来自分类Dev

如何管道到kdialog文本框?

来自分类Dev

仅在文本框中添加包含特定文本的项目

来自分类Dev

SQL到文本框

来自分类Dev

从文本框插入到多个选择框

来自分类Dev

列表框选择的项目文本到另一个文本框

来自分类Dev

如何在文本框获得焦点时选择文本框中的特定文本

来自分类Dev

如何使用文本框搜索列表框 wpf

来自分类Dev

从包含从自动完成的文本框中选择的项目的列表中删除项目

来自分类Dev

如何通过单击列表框行项目将搜索结果返回到文本框

来自分类Dev

选择文本框之前的标签文本

来自分类Dev

如何使用JavaScript获取文本框中选择框的所有项目

来自分类Dev

如何使用JavaScript获取文本框中选择框的所有项目

来自分类Dev

如何解析弹出框到文本框的值?

来自分类Dev

如何填写文本框?

来自分类Dev

从查询文本到文本框

来自分类Dev

搜索文本框在文本框中显示元素

来自分类Dev

如何在文本框之前的选择值为 0 时禁用文本框

来自分类Dev

如何将文本框文本绑定到集合的“当前”项目

来自分类Dev

如何从多行文本框到单个文本框获取行?

来自分类Dev

从文本框到日期时间选择器的日期

来自分类Dev

搜索文本框的XSS脚本

来自分类Dev

jsTree搜索文本框未出现

来自分类Dev

来自文本框的MySQL搜索值

来自分类Dev

Solr打开文本框搜索

来自分类Dev

CSS的搜索按钮和文本框

来自分类Dev

使用文本框过滤和搜索

Related 相关文章

热门标签

归档