在ASP.NET中发布GridView
本文关键字:GridView ASP NET | 更新日期: 2023-09-27 18:03:51
我只是想知道最后两行的区别
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
if (GridView1.Rows[e.RowIndex].RowType == DataControlRowType.DataRow)
{
GridViewRow row = (GridViewRow)GridView1.Rows[e.RowIndex];
string lstnme = ((TextBox)row.Cells[2].FindControl("txtLstNme")).Text;
和
string lstnme=((TextBox)row.Cells[2].Controls[0]).Text;
}
没有区别,但我建议在分配文本值
之前检查控件是否为空。string lstnme = string.Empty;
var control = ((TextBox)row.Cells[2].FindControl("txtLstNme"));
if ( control != null )
{
lstnme = control.Text
}
-
string lstnme = ((TextBox)row.Cells[2].FindControl("txtLstNme")).Text;
基本上意味着它是在你的单元格中找到一个名称为txtLstNme的控件,然后返回文本框控件内的文本。 -
string lstnme=((TextBox)row.Cells[2].Controls[0]).Text;
这意味着lstnme将在单元格中的位置0保存控件文本。
主要区别在于第一个是在控件的列表集合中查找[特定文本框,但第二个是在位置0处获取控件的文本