如何将ButtonField存储在为ButtonField设置列的数据行中

时间:2013-04-05 16:55:31

标签: asp.net gridview datarow buttonfield

考虑以下代码

protected void Button1_Click(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        DataColumn dtCol = new DataColumn();

        dtCol = new DataColumn("Name", typeof(string));
        dt.Columns.Add(dtCol);

        dtCol = new DataColumn("Address", typeof(string));
        dt.Columns.Add(dtCol);

        dtCol = new DataColumn("Account No", typeof(ButtonField));
        dt.Columns.Add(dtCol);

        ButtonField bfname = new ButtonField {
            HeaderText = "Account No",
            DataTextField="Account No",
            Text = "Klik", 
            ButtonType = ButtonType.Link, 
            CommandName = "ExecuteMe" };

        string[] strDataRow = new string[3];


        for (int intX = 0; intX < 10; intX++)
        {
            strDataRow[0] = "Name" + Convert.ToString(intX);
            strDataRow[1] = "Address" + Convert.ToString(intX);
            strDataRow[2] = bfname.Text; //Error Type of value has a mismatch with column typeCouldn't store <Account No0> in Account No Column.  Expected type is ButtonField.
            ButtonField btnField = bfname; // No Error but not appear in GridView1

            dt.Rows.Add(new object[] {strDataRow[0], strDataRow[1], strDataRow[2]});
            //dt.Rows.Add(new object[] { strDataRow[0], strDataRow[1], btnField }); // No Error but not appear in GridView1

            /* Error Message on strDataRow[2]
            Type of value has a mismatch with column typeCouldn't store <Account No0> in Account No Column.  Expected type is ButtonField.
             */

        }

        GridView1.DataSource = dt;
        GridView1.DataBind();

    }

如何将ButtonField存储在为ButtonField设置列的数据行中。 ButtonField.Text如何出现在每个DataRow

是否可以将字符串值存储在数据行中,该数据行是为ButtonField设置的列。单击该字符串后,将执行ButtonField.CommandName。

注意*:ASPX页面中的GirdView代码如下。

<asp:GridView ID="GridView1" runat="server">
    </asp:GridView>

提前致谢...

1 个答案:

答案 0 :(得分:0)

我不确定你的问题,但是我没有把按钮放在DataTable中,而是为什么不创建GridView并添加包含按钮的TemplateField,这是不可能的。

相关问题