在我的dgv中,我有一个DataGridViewButtonColumn,它为每一行添加了一个“删除行”按钮。但是,也会为dgv底部的“假”行创建一个按钮,这在此上下文中没有任何意义,因为该行尚未对应于记录。什么是隐藏该按钮的好方法,或至少涂在它上面?
我遇到了this page,它显示了一种方法,可以解决这个问题,但我想知道是否有更好的方法可以解决这种特殊情况。
答案 0 :(得分:1)
没有更好的方法,你需要扩展类DataGridViewButtonCell:
答案 1 :(得分:1)
很难控制“假行”中的控件。要解决此问题,您可以设置dgv.AllowUserToAddRows = false
以避免“假行”。然后用户的输入不会出现假行。您可以添加另一个名为“添加行”的按钮来添加“实际行”。您还可以将事件处理程序添加到最后一行,例如如果用户在最后一行输入内容,则会添加一个新行(实际行)。
一般来说,您可以使用实际行而不是假行中的行为,因为实际行更容易控制。
答案 2 :(得分:0)
尝试使用网格的RowDataBound事件。
protected void gridView1_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
Int32 cellIndex = 1; //Find your delete button cell index
e.Row.Cells(cellIndex).CssClass = "hidden"; // whatever class you like to hide the cell
}
}