我的MainForm中包含Panel,Panel上有一些TextBox和一个ListView,客户要求按回车焦点移至下一TAB,于是我在ManiForm中捕获KeyUp消息再做相应处理,效果良好;
但现在我的ListView也要响应KeyUp,因为客户要求在ListView上按回车让焦点移至列表下一行,就像在Excel上按回车一样,搞了很久,最后想了个笨办法:在MainForm类中定义个静态变量Ignore_KeyUp,当它为真时MainForm捕获KeyUp后立即返回,这样ListView就可以处理KeyUp消息了;
但我总觉得这样做太不合理,也违背了OOP的规律吧,请问高手们有没有更有效的办法?谢谢!
但现在我的ListView也要响应KeyUp,因为客户要求在ListView上按回车让焦点移至列表下一行,就像在Excel上按回车一样,搞了很久,最后想了个笨办法:在MainForm类中定义个静态变量Ignore_KeyUp,当它为真时MainForm捕获KeyUp后立即返回,这样ListView就可以处理KeyUp消息了;
但我总觉得这样做太不合理,也违背了OOP的规律吧,请问高手们有没有更有效的办法?谢谢!
解决方案 »
- 关于这种特殊gif怎么制作?一般在QQ聊天的时候才能显示出特殊效果
- WCF学习中碰到的问题:超出最大数组长度配额(16384)
- 求winform调用FACEBOOK API 代码
- 一个表50个字段正常吗?
- 用C#实现pictureBox中图像的局部放大
- c# 服务程序如何可以显示介面
- 一段非常实用的代码,文件加密
- 请教一下在类库(.DLL)怎么读取一个文件或是当前类库项目的位置??
- C#编程在VS25中调试 一个结构体数组赋值时,出现奇怪问题,给其中一个数组元素的某个结构体成员赋值时,其它数组元素的某个结构体成员值自动改变了.
- 求助:用C#做这种开发需要哪些知识
- 如何在ASP.NET中获取JavaScript中的一个变量的值?
- 已知一个数据表名 如何得到字段名
if ((System.windows.Forms.ListView)sender).Text == "listView的Text")
{
//处理ListView的KeyUP
}
else if ((System.Windows.Forms.Form)sender).Text = "窗体的名称")
{
//处理窗体的KeyUp
}
不知道能不能满足你的要求
sender.Text 是sender的标题还是内容呀?我的ListView 上通过画TextBox的方式来达到可编辑目的,那么ListView的sender也是TextBox哟,如何和Panel上其他TextBox区分开?