我有一个datagridview'audit_TrailDataGridView'。我需要禁用它的列标题:用户单击列标题时不会发生任何事情。
private void audit_TrailDataGridView_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
//do what?
}
请帮忙。
答案 0 :(得分:1)
可能会发生不受欢迎的事情,因为当用户点击标题时会引发一个事件,旨在处理用户点击实际单元格而非标题时的情况(例如CellDoubleClick
事件)。您需要手动检查单元格单击的所有此类事件不是标题:
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0)
{
//do something here
}
}
答案 1 :(得分:0)
我在dataGridView1_SelectionChanged
事件中遇到了类似的问题。
我希望在单击标题列时对DataGridView进行排序,但是不要实现我希望为非标题行单击运行的代码。
基本上我发现了一个愚蠢的解决方案,我在try catch
方法中添加了一个巨大的dataGridView1_SelectionChanged
块,包含了此方法中的所有内容。
也许这对你或其他人也有用。