C# - 如何筛选使用组合框在DataGridView [英] C# - how to filter the DataGridView using ComboBox

查看:155
本文介绍了C# - 如何筛选使用组合框在DataGridView的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要过滤我的 DataGridView的使用组合框

下面是我的显示代码

cm = new SqlCommand();
cn = new SqlConnection(lgn.connections);
cn.Open();
cm.Connection = cn;
query = "Select * from Trails";
cm.CommandText = query;
SqlDataAdapter dar = new SqlDataAdapter(cm);
DataTable dt = new DataTable();
dar.Fill(dt);
dataGridView1.DataSource = dt;

dataGridView1.Columns[0].Width = 0;
dataGridView1.Columns[1].Width = 130;
dataGridView1.Columns[2].Width = 100;
dataGridView1.Columns[3].Width = 360;
dataGridView1.Columns[4].Width = 130;
this.dataGridView1.Columns[0].Visible = false;



RAW数据:

RAW DATA:

ID  | TRANSACTYPE | DESCRIPTION | AUTHORIZED BY
-----------------------------------------------
1   | LOGIN       | blah blah   | BOB
2   | LOGOUT      | blah blah   | BOB
3   | LOGIN       | blah blah   | TIM
4   | LOGOUT      | blah blah   | KURT

组合框名为 cboFilter ,如果我改变了指数登录,将显示在 dataGridView1 仅在登录

I have ComboBox named cboFilter and if I changed the index to LOGIN the data that will show on the dataGridView1 is only LOGINs.

推荐答案

试试这个:

DataTable dt = new DataTable();

private void cboFilter_SelectedIndexChanged(object sender, EventArgs e)
{
    DataView dv = dt.DefaultView;
    dv.RowFilter = string.Format("TRANSACTYPE  LIKE '%{0}%'", cboFilter.SelectedItem.ToString());
    dataGridView1.DataSource = dv;
}

这篇关于C# - 如何筛选使用组合框在DataGridView的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆