知识大全 认识.NET Framework事件处理
Posted 事件
篇首语:安全感,不是来源于爱,而是偏爱。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 认识.NET Framework事件处理相关的知识,希望对你有一定的参考价值。
认识.NET Framework事件处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
最近的开发中在用DataGrid 类 (System Windows Forms) 发现单击列标题会按该列对表数据进行排序 非常方便 可是有时候用户又想按初始的数据排序查看 那怎么办? 首先介绍两个需要了解的小知识 DataGrid AllowSorting 属性 获取或设置一个值 该值指示是否可以通过单击列标头对网格进行重新排序 DataGrid HitTestType 枚举 指定 System Windows Forms DataGrid 控件中用户单击的部分 其中 None 表示当控件不包含表 或者包含的行很少时 或者当表滚动到其底部时可见的背景区域 而当用户单击行标题之上 列标题之右的小矩形区域时 得到的HitTestType值也是None 所以我们可以在判断到用户单击None区域时 设置DataGrid对象的AllowSorting属性 使表格数据恢复初始排序 程序非常简单 在DataGrid对象的MouseDown事件中加入以下即可 DataGrid dg = (DataGrid) sender; DataGrid HitTestInfo hit = dg HitTest(e X e Y); if ( hit Type Equals(DataGrid HitTestType None) ) dg AllowSorting = false; dg AllowSorting = true; 这与 NET Framework的事件处理有什么关系呢? 如果我想创建一个由DataGrid派生的类 同时实现刚才的功能 就需要重载DataGrid类的某个方法 由此我们进入主题 在C#中 可重载的事件方法名称皆以 On 开头 且被声明为 virtual 一个被声明成virtual的方法 就代表它可被重载 重载事件方法 事件方法会引发事件 引发事件会调用事件处理程序 关于引发事件详细信息 请参见引发事件 我相中了OnMouseDown事件方法 因为是它引发 MouseDown 事件 有了思路 程序是简单的 如下 using System; using System Windows Forms; namespace MyExtend public class ExDataGrid : DataGrid protected override void OnMouseDown(MouseEventArgs e) DataGrid HitTestInfo hit = this HitTest(e X e Y); if ( hit Type Equals(DataGrid HitTestType None) ) this AllowSorting = false; this AllowSorting = true; base OnMouseDown(e); 注意最后一句 base OnMouseDown(e); 重写派生类中的 OnMouseDown 时 请确保调用基类的 OnMouseDown 方法 下次再用DataGrid时 就可以通过ExDataGrid类来实现了 如下 using MyExtend; ExDataGrid dg = new ExDataGrid(); cha138/Article/program/net/201311/11435相关参考
.NETFramework轻松处理XML数据 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在n
知识大全 详谈.NET Framework处理XML操作技巧
详谈.NETFramework处理XML操作技巧 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
.NetFramework2.0中的事务处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 事务
.NET开发事件处理的步骤[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! DOTNET事件
ASP.NET中的事件处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一ASPNET中的事件
.NET开发事件处理的步骤[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 第三步发送方声明
探讨与比较Java和.NET的事件处理框架 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!事件驱动模
.NET开发中碰到的事件处理的步骤 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! DOTNET事
ASP.NET2.0高级数据处理之处理控件事件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在前面
知识大全 使用Visual Basic.NET重载事件处理程序
使用VisualBasic.NET重载事件处理程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!