明细表定制“新增记录”的快捷键
明细表定制“新增记录”的快捷键
在frmBaseChild窗体处理快捷键,设Form.KeyPreview=True,在KeyDown事件内调用模板方法DoExecuteHotKey。
业务窗体重写DoExecuteHotKey方法,处理Alt+Q 键。
适用所有框架版本。
扫一扫加作者微信
在frmBaseChild窗体处理快捷键,设Form.KeyPreview=True,在KeyDown事件内调用模板方法DoExecuteHotKey。
C# Code:
private void frmBaseChild_KeyDown(object sender, KeyEventArgs e)
{
//处理快捷键
if (e.Alt && (e.KeyCode >= Keys.A) & (e.KeyCode < Keys.Z))
{
this.DoExecuteHotKey(e);
e.Handled = true;
return;
}
}
protected virtual void DoExecuteHotKey(KeyEventArgs e)
{
if (e.Alt & (e.KeyCode == Keys.X)) this.DoClose(null);
if (e.Alt & (e.KeyCode == Keys.Y)) this.DoHelp(null);
}
private void frmBaseChild_KeyDown(object sender, KeyEventArgs e)
{
//处理快捷键
if (e.Alt && (e.KeyCode >= Keys.A) & (e.KeyCode < Keys.Z))
{
this.DoExecuteHotKey(e);
e.Handled = true;
return;
}
}
protected virtual void DoExecuteHotKey(KeyEventArgs e)
{
if (e.Alt & (e.KeyCode == Keys.X)) this.DoClose(null);
if (e.Alt & (e.KeyCode == Keys.Y)) this.DoHelp(null);
}
业务窗体重写DoExecuteHotKey方法,处理Alt+Q 键。
C# Code:
protected override void DoExecuteHotKey(KeyEventArgs e)
{
if (e.Alt && this.IsAddOrEditMode)
{
if (e.KeyCode == Keys.Q) //Alt Q - 新增明细记录
{
gvDetail.Focus();
this.CreateOneDetail(gvDetail, (int)DetailButtons.Add);//新增明细记录
gvDetail.ShowEditor();//显示输入框
}
else base.DoExecuteHotKey(e);
}
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
protected override void DoExecuteHotKey(KeyEventArgs e)
{
if (e.Alt && this.IsAddOrEditMode)
{
if (e.KeyCode == Keys.Q) //Alt Q - 新增明细记录
{
gvDetail.Focus();
this.CreateOneDetail(gvDetail, (int)DetailButtons.Add);//新增明细记录
gvDetail.ShowEditor();//显示输入框
}
else base.DoExecuteHotKey(e);
}
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
适用所有框架版本。
扫一扫加作者微信
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网