如何将Gridview行转换为int OR如何将行向下和向上提升
本文关键字:int Gridview 转换 OR | 更新日期: 2023-09-27 18:18:31
我想列个清单。当我在Gridview中选择一行时,红线与上面和下面的线
这是ASP的一面
protected void rowCommand(object sender, GridViewCommandEventArgs e)
{
switch (e.CommandName)
{
case "PIC":
ImageButton i = (ImageButton)e.CommandSource;
GridViewRow row = (GridViewRow)i.NamingContainer;
row.BackColor = System.Drawing.Color.Red;
**//problem**
row = Convert.ToInt32(row + 1);
//problem
Session["Row"] = row;
}
}
如何将行转换为加1和减1的数字以及如何将int num转换回行类型
不工作,我可以捕获行号通过这个代码
ImageButton i = (ImageButton)e.CommandSource;
GridViewRow row = (GridViewRow)i.NamingContainer;
但是当我试着做你提供的东西时,它不起作用我所需要做的就是:
Session["Row"] = row;
你不能将GridViewRow转换为int,但是GridViewRow有一个RowIndex属性,请参阅MSDN文档:RowIndex
commandparameter是生成事件的行的从零开始的整数索引。
所以e.CommandArgument - 1是前一行,+ 1是后一行。确保检查行集的边界(例如,没有负索引,没有大于长度- 1的索引)
要获得这些行,您可以这样做(不保证,IDE未打开): GridViewRow gvrBefore = null;
if ( ((int)e.CommandArgument) > 0) {
gvrBefore = MyGridObject.Rows[((int)e.CommandArgument) - 1];
}