datagridview 的事件问题

xmlchina29 2007-07-26 01:39:55
我添加了添加记录事件 dataGridView1_RowsAdded 可是不光是在添加记录时候触发此事件,在点

“columnheaders”(datagridview 最上面的那部分,带排序功能的地方) 这块也会触发,不知道怎么

才能只有添加记录的时候才触发??

我现在的解决办法是把“columnheaders”隐藏掉,但是感觉这样不太好。所以看看有别的办法解决吗?
...全文
177 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xmlchina29 2007-07-30
  • 打赏
  • 举报
回复
呵呵,不意思啊,那天我忙的实在是不行了。。。不好意思。


jiatong1981(末日之痕)的办法可以解决。。


谢谢了 。/
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
行不行都给句话噻~……

这样最让人闷了
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
bool newRowNeeded;
private void Form1_Load(object sender, EventArgs e)
{
this.dataGridView1.VirtualMode = true;
}

………………


private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
if (newRowNeeded)
{
this.newRowNeeded = false;
MessageBox.Show("New Row Added");
this.dataGridView1.VirtualMode = true;
}

}

private void dataGridView1_NewRowNeeded(object sender, DataGridViewRowEventArgs e)
{
this.newRowNeeded = true;
this.dataGridView1.VirtualMode = false;
}
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
bool newRowNeeded;
private void Form1_Load(object sender, EventArgs e)
{
this.dataGridView1.VirtualMode = true;
}

………………

private void dataGridView1_NewRowNeeded(object sender,
DataGridViewRowEventArgs e)
{
newRowNeeded = true;
}
private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
if (newRowNeeded)
{
this.newRowNeeded = false;
MessageBox.Show("New Row Added");
this.dataGridView1.VirtualMode = true;
}

}

private void dataGridView1_NewRowNeeded(object sender, DataGridViewRowEventArgs e)
{
this.newRowNeeded = true;
this.dataGridView1.VirtualMode = false;
}

不知道lz是否这个意思
ERPCoder 2007-07-26
  • 打赏
  • 举报
回复

一是:让列头不可用(不可点)

二是:在事件里判断( -1是列头的索引).
if (e.RowIndex != -1)
{
// 做处理...
}
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
代码如何写的?
Ericcsdn 2007-07-26
  • 打赏
  • 举报
回复
QQ群:323373

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧