DataGridView1 中的数据如何进行筛选呢.

lucifercxw 2019-12-22 12:26:40
希望在textbox 中输入文本.然后点击筛选按钮之后,,在DataGridView1 中显示含有textbox 框中的信息的行.
这个如何实现呢.
...全文
429 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
github_36000833 2019-12-22
  • 打赏
  • 举报
回复
如果是数据绑定,可以筛选数据,比如:
using System.Data;
using System.Drawing;
using System.Windows.Forms;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            // InitializeComponent();
            this.Controls.Add(dataGridView1);
            this.Controls.Add(textBox1);

            this.bindingSource.DataSource =  PopulateSampleData();
            this.dataGridView1.DataSource = bindingSource;
            this.textBox1.TextChanged += delegate
            {
                bindingSource.Filter = $"名字 LIKE '%{this.textBox1.Text}%'";
            };
            this.textBox1.Text = "三";
        }

        DataTable PopulateSampleData()
        {
            var dataTable = new DataTable();
            dataTable.Columns.Add("编号", typeof(int));
            dataTable.Columns.Add("名字", typeof(string));
            dataTable.Rows.Add(3, "张三");
            dataTable.Rows.Add(4, "李四");
            dataTable.Rows.Add(5, "王五");
            dataTable.Rows.Add(6, "马六");
            dataTable.Rows.Add(7, "冯七");
            dataTable.Rows.Add(8, "三四五六七八");
            return dataTable;
        }

        TextBox textBox1 = new TextBox() { Dock = DockStyle.Top, BackColor = Color.PeachPuff};
        DataGridView dataGridView1 = new DataGridView() { Dock = DockStyle.Fill};
        BindingSource bindingSource = new BindingSource();
    }
}
  • 打赏
  • 举报
回复
重新访问数据库根据文本类型得到相关行,然后再绑定在datagridview里

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧