当前位置: 首页 > news >正文

深圳市科技网站开发为爱表白网页设计模板素材

深圳市科技网站开发,为爱表白网页设计模板素材,wordpress 刷新,广东基层团组织建设部网站在我们开发自定义控件的过程中,我们常常会给控件添加集合属性。比如定制Grid控件就会有Column集合。当集合属性发生变化时#xff0c;比如添加新元素#xff0c;删除新元素#xff0c;我们要通知控件去重绘以反映新的变化。我们可以创建一个集合类#xff0c;在类里添加一个…在我们开发自定义控件的过程中,我们常常会给控件添加集合属性。比如定制Grid控件就会有Column集合。当集合属性发生变化时比如添加新元素删除新元素我们要通知控件去重绘以反映新的变化。我们可以创建一个集合类在类里添加一个新的事件并在集合发生变化时触发事件。.Net框架已经为我们提供了现成的委托声明下面我们来看看怎么使用。      我创建一个名字叫HeaderCollection的类派生于System.System.Collections.ObjectModel.CollectionColumnHeader。利用.Net已经声明的CollectionChangeEventHandler委托来声明一个事件如下       public delegate void CollectionChangeEventHandler ( Object sender, CollectionChangeEventArgs e) CollecionChangeEventArgs的构造函数需要两个参数一个枚举类型CollectionChangeAction用它来指出发生了什么变化包含添加删除整个集合发生变化三种动作第二个参数传递发生变化的元素。      接下来我们重载CollectionT的几个方法InsertItemClearItemsRemoveItem在这些方法里触发事件下边是这个类的完整描述:       using System;using System.Collections.Generic;using System.Text;using System.Collections;using System.Collections.ObjectModel;using System.ComponentModel;namespace CPI.DataProcess.Forms{[Serializable]public class HeaderCollection:CollectionColumnHeader{public event CollectionChangeEventHandler ItemChanged;public HeaderCollection(){}protected override void InsertItem(int index, ColumnHeader item){ base.InsertItem(index, item);ItemChanged(this,new CollectionChangeEventArgs(CollectionChangeAction.Add,item));}protected override void ClearItems(){base.ClearItems();ItemChanged(this, new CollectionChangeEventArgs(CollectionChangeAction.Refresh, null));}protected override void RemoveItem(int index){base.RemoveItem(index);ItemChanged(this, new CollectionChangeEventArgs(CollectionChangeAction.Remove, this[index]));}protected override void SetItem(int index, ColumnHeader item){ base.SetItem(index, item);ItemChanged(this, new CollectionChangeEventArgs(CollectionChangeAction.Refresh, null));}private void OnItemPropertyChanged(Object sender){ItemChanged(sender,null);}}} 这样我们的Collection就暴露出一个改变事件在使用它的地方给它添加委托就可以了例如    public void OnCollectionPropertyChanged(Object sender,CollectionChangeEventArgs e){Invalidate();}private HeaderCollection _Headers new HeaderCollection();Headers.ItemChangednew CollectionChangeEventHandler(OnCollectionPropertyChanged);       当集合属性发生变化时就会触发事件通知自定义控件重绘。
http://www.zqtcl.cn/news/476005/

相关文章:

  • 长沙网站制作哪家强网站后台是怎么做的
  • Linux网站开发设计做ppt网站动态
  • 西部中大建设集团网站微商代理网
  • 做网站的参考文献有哪些火车头采集 wordpress
  • 网站不备案会有什么影响最新企业名录搜索软件
  • 邯郸做网站公司哪家好优化设计四年级下册数学答案
  • wordpress企业建站模版wordpress门户网站模板
  • 网站建设时间及简介企业注册代理
  • 网站首页制作方案wordpress中常用插件安装包
  • 阿里云建立网站赤坎网站建设公司
  • 时光轴 网站小公司做网站赚钱吗
  • 手机管理网站模板乐山住房和城乡建设厅网站
  • wordpress链接样式设置方法网络seo推广培训
  • 建站系统wordpress下载企业网站建设课程体会
  • 网站资源规划怎么写wordpress怎么解绑域名
  • 建湖企业做网站多少钱网页开发工具软件
  • WordPress怎么建小站wordpress替换谷歌字体库
  • ps建设网站步骤佛山做外贸网站特色
  • 杭州做代发的网站有哪些计算机基础网站建设和网络安全
  • 做汽配外贸是在哪个网站做山东百度推广
  • 网站类型大全cms监控软件下载官网
  • 网站设计制作 建网站免费asp地方门户网站系统
  • 凡科网做的网站保存后就上传了吗东莞网站推广建设
  • 网站推广案例闲鱼上做网站
  • 网站 做购物车分类信息网站建设系统
  • 网站做弹窗坂田建设网站
  • 北仑网站推广保险网站建设
  • 文山城乡建设部网站首页个人网站怎么注册
  • 西安企业建站wordpress外部调用后台
  • 江苏手机网站建设公司域名查询ip解析