0

姓をテキスト ボックスに入力する GridView のフィルターを作成しようとしています。ボタンをクリックすると、データソースの姓の列に基づいて GridView がフィルター処理されます。

そのため、ボタンがクリックされたら、GridView の DataSource に FilterExpression を追加するつもりでした。ただし、インテリセンスは .FilterExpression を取得していないため、何かが足りないことがわかります。GridView の DataSet はコード ビハインドでプログラム的に定義されており、.aspx ページで定義された DataSource で .FilterExpression を使用することに慣れています。

コード:

protected void Page_Load(object sender, EventArgs e)
{
     if (!Page.IsPostBack)
     {
      databind();
     }
}
private void databind()
    {
        try
        {
            customerBE = new CustomerBE();
            customerBE.UserID = 0;
            dset = new DataSet();
            customerBL = new CustomerBL();
            dset = customerBL.GetUserDetails(customerBE);
            gridViewCreateUser.DataSource = dset;
            gridViewCreateUser.DataBind();

        }
        catch (Exception ex)
        {
            ...
        }
    }

だから私がやろうとしていることは次のようなものです:

protected void Button1_Click(object sender, EventArgs e)
{
  dset.FilterExpression = ("LastName=" + textbox1.Text);
}

このインスタンスで .FilterExpression などを使用することは可能ですか?

4

1 に答える 1

0

あなたの場合はわかりませんが、データテーブルで .Select を使用できます。インデックスまたは名前が何であれ、データセット内のテーブルのインデックスに置き換えることができます。

DataTable dt = new DataTable();
dt = dset.Tables[0].Select("LastName=" + textbox1.Text).CopyToDataTable();
于 2013-03-27T16:09:18.743 に答える