如何在gridview C#.net中以编程方式添加控制单元?

时间:2019-07-05 17:09:42

标签: c# .net

每行都必须有一个下拉列表和一个提交按钮。 所以我做了一个数据清单。 我这样添加他们。 enter image description here //在我后面的代码中

List<data> listdatainfo = new List<data>();

protected void Button1_Click(object sender, EventArgs e){
SqlDataReader detaillist = comm2.ExecuteReader();
 while (detaillist.Read())
 {
  rmainfo tempinfo = new rmainfo();
  tempinfo.itemdetail= detaillist["itemdetail"].ToString();
  tempinfo.creditmemo= detaillist["creditmemo"].ToString();
   tempinfo.submit= "0";//it will be filled 0 or 1
   listdatainfo .Add(tempinfo);
  }
  loadDataTable();}

//它是从这里http://asp.net-informations.com/gridview/without-database.htm

引用的
private void loadDataTable()
    {
        DataSet ds = new DataSet();
        DataTable dt;
        dt = new DataTable();
        DataColumn itemdetail;
        DataColumn creditmemo ;         
        CommandField submit = new CommandField();
        submit.EditText = "Edit";
        submit.ShowEditButton = true;

        itemdetail= new DataColumn("itemdetail",Type.GetType("System.String"));
        creditmemo = new DataColumn("creditmemo ",Type.GetType("System.String"));
        submit = new CommandField();
        dt.Columns.Add(itemDetail);
        dt.Columns.Add(creditMemo);
        dt.Columns.Add("submit"); //it's for submit button

        foreach (data tempinfo in listdatainfo )
        {
            DataRow dr;               
            dr = dt.NewRow();
            dr["Item Detail"] = tempinfo.itemDetail;
            dr["Credit Memo"] = tempinfo.creditMemo;
            dr["submit"] = submit;
            dt.Rows.Add(dr);
        }
        ds.Tables.Add(dt);
        GridView2.DataSource = ds.Tables[0];
        GridView2.DataBind();    
       }}

public class data
    {

        public string itemDetail { get; set; }
        public string creditMemo { get; set; }
        public string submit { get; set; }
    }

如我所料,此行在此行发生了错误。 dr [“ submit”] =提交;

如何为每行添加一个按钮?或任何组件? 在经典asp中更容易。 请帮忙。

1 个答案:

答案 0 :(得分:0)

您必须在GridView模型中添加按钮,而不是为其提供数据表。