我有一个ASP DataGrid,其中某些单元格是可编辑的。我在不使用html页面上的<columns>
定义的情况下使它们可编辑,但是在创建新行时使用了html属性。
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="true"
runat="server" class="w3-table-all w3-centered">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
</asp:DataGrid>
在Web表单上,我仅定义了DataGrid 这是我添加新行的方式
protected void addclick(object sender, EventArgs e){
DataTable dt = (DataTable)ViewState["Items"];
DataRow dr;
dr = dt.NewRow();
dr[0] = SecCat.SelectedItem.Value;
dr[1] = SecCat.SelectedItem.Text;
dr[2] = "<div id = 'kls' runat ='server' class='kls' contenteditable>0</div>";
dr[3] = "<div id = 'pcs' runat ='server' class ='pcs' id contenteditable='true'>0</div>";
dr[4] = "<div contenteditable='true'></div>";
dr[5] = " <input type='button' value='Delete' onclick='deleteElement(this)'> ";
dt.Rows.Add(dr);
ViewState["Items"] = dt;
this.BindGrid();
}
所以我有一个dropdownList(SecCat
),当用户按下我的按钮时,我得到了dropdownList的值和文本。
如您所见,第三个单元格是通过html属性定义的,以便使其可编辑,而奇怪的是它正在工作(:P)。
我的问题是如何访问用户插入的值。
打开Chrome控制台并搜索元素时,我可以找到该值,但是我不知道如何通过C#访问它们。