(1)使用CopeTo和datatable.select用法
private void textBox1_TextChanged(object sender, EventArgs e)
{
//下拉框,选择查询条件
string condition_text = this.cbo_ChaXunTiaoJian.Text.ToString().Trim();
//文本框,填写关键字
string key_text = this.txt_GuanJianZi.Text.ToString().Trim();
string column = "";
if (condition_text != "" && key_text != "")
{
//定义数组,存储下拉框中的现有项
string[] condition_array = new string[cbo_ChaXunTiaoJian.Items.Count];
cbo_ChaXunTiaoJian.Items.CopyTo(condition_array, 0);
//定义关键字数组,以下三个字段为DGV中的列名
string[] key_array = new string[3] { "KeHuMingCheng","ChanPinBianHao", "ChanPinMingCheng" };
for (int i = 0; i < condition_array.Length; i++)
{
if (condition_array[i].ToString().Trim() == condition_text)
{
column = key_array[i].ToString().Trim();
}
}
BindingSource mysource = new BindingSource();
mysource.DataSource = dt_XiaoShou_BaoJia.Select(this.dgv_baojia.Columns[column].DataPropertyName + " like " + "'%" + key_text + "%'").CopyToDataTable();
this.dgv_baojia.DataSource = mysource;
}
}
(2)使用 DataTable和 DataView 模糊查询
private void tsptxt_KeyWord_TextChanged(object sender, EventArgs e)
{
DataTable dt = dt_DangQianPaiBan;
DataView dv = new DataView();
dv = dt.DefaultView;
if (this.tsCbo_ChaXunTiaoJian.Text == "护士编号")
{
dv.RowFilter = "编号 like" + "'%" + this.tsptxt_KeyWord.Text.Trim() + "%'";
}
else if (this.tsCbo_ChaXunTiaoJian.Text == "护士姓名")
{
dv.RowFilter = "姓名 like" + "'%" + this.tsptxt_KeyWord.Text.Trim() + "%'";
}
this.DGV_DangQianPaiBan.DataSource = dv;
}
(3)在DGV中显示全部数据
DataTable dt = dt_DangQianPaiBan;
DataView dv = new DataView();
dv = dt.DefaultView;
dv.RowFilter =“”;
this.DGV_DangQianPaiBan.DataSource = dv;