我对编程比较陌生,你很快就会看到...
我有2个事件,执行相同的代码.我目前有一个datagridview的伪代码:
private void dgv_CellEnter(object sender, DataGridViewCellEventArgs e)
{
string abc = "abc";
}
private void dgv_CellClick(object sender, DataGridViewCellEventArgs e)
{
string abc = "abc";
}
Run Code Online (Sandbox Code Playgroud)
有没有办法将它合并为一个事件?有一个更好的方法吗?
为什么不只有一个方法并将其映射到两个事件?
private void dgv_CellEvent(object sender, DataGridViewCellEventArgs e)
{
string abc = "123";
}
// In the event mapping
dgv.CellEnter += dgv_CellEvent;
dgv.CellClick += dgv_CellEvent;
Run Code Online (Sandbox Code Playgroud)
那么快速回答是肯定的.将方法的内容放在自己的方法中,然后让onclick事件调用该方法.如果需要更改代码,这将只为您提供一个更新代码的位置.
有100种不同的方法可以做到这一点,这是最简单的问题.
所以创建这样的东西:
protected void MyNewMethod()
{
string abc = "123";
}
Run Code Online (Sandbox Code Playgroud)
然后你的其他方法会像这样调用它:
private void dgv_CellEnter(object sender, DataGridViewCellEventArgs e)
{
MyNewMethod();
}
private void dgv_CellClick(object sender, DataGridViewCellEventArgs e)
{
MyNewMethod();
}
Run Code Online (Sandbox Code Playgroud)
只需从标记中调用相同的方法即可.您实际上只需要其中一种方法,并且标记中的事件可以调用相同的方法.
| 归档时间: |
|
| 查看次数: |
6210 次 |
| 最近记录: |