每行都必须有一个下拉列表和一个提交按钮。 所以我做了一个数据清单。 我这样添加他们。 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中更容易。 请帮忙。
答案 0 :(得分:0)
您必须在GridView模型中添加按钮,而不是为其提供数据表。