我在任何地方搜索代码以编程方式在处理某个代码序列后单击特定的DataGridView行标题。
我发现的所有内容都允许选择或突出显示行,列或单元格;但没有任何日期点击行标题即。解雇
private void dgvMyGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) {}
方法
对此的任何帮助将不胜感激。
答案 0 :(得分:1)
解决方案取决于您想要达到的目标。
简单地让dgvMyGrid_RowHeaderMouseClick中的代码以最简单的方式运行,就像Tzah Mama写的那样,只需编写:
dgvMyGrid_RowHeaderMouseClick(null, null);
注1:将事件代码添加到文档非常重要,可以用这种特殊而非正常的方式调用它。特别是因为这不提供代码可能期望的参数。
注意2:如果您的代码需要一些参数,您可以尝试提供它们:
sender
简单地称为dgvMyGrid
如果您不编码DataGridView实例,而是继承类,则只需使用this
第二个参数很复杂,并非所有部件都可以轻松提供,但也可能不需要。
以下是创建它的基本代码:
int row = ?? // your target row
int col= -1; // no column
int x = 0; // no offsets..
int y = 0; // ..
int delta = 0; // no mouse wheel
DataGridViewCellMouseEventArgs E = new DataGridViewCellMouseEventArgs(col, row, x, y,
new MouseEventArgs(MouseButtons.Left, clicks, x, y, delta));
注3:有时重要的是要知道事件是由真实用户操作还是通过代码调用的。留下一个paremter null是一个简单的方法来表明这一点。再说一遍:Key是文档!
但也许你需要rowHeader点击的效果?这可能是行选择,具体取决于SelectionMode。这将通过调用脚本不工作!相反,您也必须对选择进行编码:
DGV1.Rows[row ].Selected = true;