求C# asp.net 大神帮我分析下语句 e.Item.Cells[0].Text).Rows.Count 具体是啥意思阿 一头雾水

namespace XSXX.Admin
{
/// <summary>
/// CollageList 的摘要说明。
/// </summary>
public partial class CollageList : System.Web.UI.Page
{

protected void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!Page.IsPostBack )
{
initList();
}
}

private void initList()
{
//显示学院列表
this.DataGrid1.DataSource=DB.Get_Table("select * from Xy");
this.DataGrid1.DataBind();
this.txtBm.Text="";
this.Terr.InnerHtml="";
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);

}
#endregion

protected void Button1_Click(object sender, System.EventArgs e)
{
//学院名称不能为空
if(this.txtBm.Text=="" )
{
this.Terr.InnerHtml="<font color='red'>学院名称不能为空</font>";
return;
}
//添加新的学院 刷新列表
DB.ExecSql("insert into Xy(xymc) values('"+ this.txtBm.Text +"')");
initList();
}

private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName=="Delete")
{
//判断记录是否允许删除
if(DB.Get_Table("select * from zr where xyid="+ e.Item.Cells[0].Text).Rows.Count>0)
{
this.Terr.InnerHtml="<font color='red'>当前的信息已经被使用</font>";
return;
}
//删除记录 刷新列表
DB.ExecSql("delete from xy where xyid=" +e.Item.Cells[0].Text);
initList();
}
}
}
}
最新回答
曾言河山

2024-10-31 10:04:12

e是参数System.Web.UI.WebControls.DataGridCommandEventArgs,代表的意思差不多就是一行,e.Item.Cells[0]是这一行的一个Cell,cell就是单元的意思,整个e.Item.Cells[0].Text意思就是当前行的第一列的数据。
夕颜为谁舞

2024-10-31 10:37:09

e...事件源,,
这里的这个e
就等同于this.DataGrid1;
e.item等同于你当前操作的那一行
cell[0] 当前行的第一列
text 第一列的值
梦有一把锁

2024-10-31 08:46:28

DataGrid触发删除事件的时候 e.Item.Cells[0].Text 获取你所选择这行的第Cells[0]列中的文本

然后用得到的ID查询数据
select * from zr where xyid=

如果查询结果存在记录,就返回已当前信息已被使用。
DB.Get_Table("").Rows.Count > 0
风雪不归

2024-10-31 08:37:05

你贴的语句里没有 e.Item.Cells[0].Text).Rows.Count 这个啊~~

e.Item.Cells[0].Text).Rows.Count 是不是在datagrid中?
e.Item.Cells[0].Text表示的是这一行第一个单元(也是第一列)的text