首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏魏琼东

    .NET快速开发实践中的IExtenderProvider扩展组件

              说起扩展编程组件,我们不得不起到一个接口IExtenderProvider,参考msdn的定义:定义将属性扩展到容器中的其他组件的接口;下面我贴上IExtenderProvider的定义 ,IExtenderProvider接口借助VisualStudio设计器的功能,使我们可以动态的为控件增加属性,并可以在设计时通过属性窗口修改这些属性,而不需要继承控件类。 IExtenderProvider接口组件提供了一种与容器中其他组件的粘合能力,这无疑是为我们提供了另一种组件的扩展思想,我理解为侵入编程,假设没有这个方式,我们扩展一个组件需求继承原有的组件并且增加一个或多个扩展属性 以下这种方式可以理解为.NET的原生实现方式,需求继续原来控件,并且在应用过程上需要调用UI的控件,比较麻烦,下面我们来用IExtenderProvider做一个实现: [ToolboxItem 下面我将会介绍基于IExtenderProvider扩展技术的UI控件与实体的数据绑定组件。

    97770发布于 2018-01-12
  • 来自专栏AhDung

    【C#】使用IExtenderProvider为控件添加扩展属性,像ToolTip那样

    [ProvideProperty("Describe", typeof(ToolStripItem))] public class ToolDescribe : Component, IExtenderProvider { return true; } } } 实现说明: 1、让ToolDescribe类实现System.ComponentModel.IExtenderProvider 实现IExtenderProvider接口就表明本类是一个【扩展程序提供程序】,MSDN有相关的示例:http://msdn.microsoft.com/zh-cn/library/ms229066(v 当然这里说的是应用层面,底层VS对IExtenderProvider程序做了些什么那自然是高大上的; 6、实现上述事件的处理方法,本例就是item_MouseEnter和item_MouseLeave, ProvideProperty("DescribeOfMenuItem", typeof(MenuItem))] public class ToolDescribe : Component, IExtenderProvider

    2.1K20发布于 2018-09-13
  • 来自专栏魏琼东

    .NET快速开发实践之应用IExtenderProvider实现输入法自动切换

             我在前面的.NET快速开发实践中的IExtenderProvider扩展组件和.NET快速开发实践之应用IExtenderProvider实现对象与UI控件的绑定两篇Post介绍了IExtenderProvider 扩展编程模式和应用IExtenderProvider实现实体与对象的做法与例子,下面我为介绍一下在管理信息系统开发中一个常用的功能,输入法的切换,很多在线事务处理系统业务量非常的繁忙,在特定的某个时刻, 那么,这样的需求我们如何实现呢,实现的方法或者很多,我只说IExtenderProvider扩展实现的方法,在AgileEAS.NET平台中集成了一个叫ChineseLanguageInput的小组件来完成这个功能 [ProvideProperty("Language", typeof(Component))] public class ChineseLanguageInput:Component, IExtenderProvider 成员 bool IExtenderProvider.CanExtend(object component) { return component

    2.1K60发布于 2018-01-12
  • 来自专栏魏琼东

    .NET快速开发实践之应用IExtenderProvider实现控件焦点跳转

             我在前面的.NET快速开发实践中的IExtenderProvider扩展组件和其他两篇Post介绍了IExtenderProvider扩展编程模式和应用IExtenderProvider this.tbCode.Focus(); }          这样的做法,我们就必须重写所有输入控件的KeyDown事件,效率低下,也影响代码的美观,我们可以通过应用应用IExtenderProvider ) ] [ProvideProperty("PreviousControl", typeof(Control))] public class ControlFocus:Component, IExtenderProvider return true; } return false; } #region IExtenderProvider 成员 bool IExtenderProvider.CanExtend(object component) { if (component is

    884100发布于 2018-01-12
  • 来自专栏魏琼东

    .NET快速开发实践之应用IExtenderProvider实现对象与UI控件的绑定

    在以前的开发过,曾经使用IExtenderProvider实现过控件焦点跳转的功能,所以也就想到了通过IExtenderProvider搞一个对象与UI的绑定扩展组件,定义UI与对象属性的映射关系的方法实现这种绑定

    94360发布于 2018-01-12
  • 来自专栏魏琼东

    一步一步教你使用AgileEAS.NET基础类库进行应用开发-WinForm应用篇-在UI中应用DataUIMapper组件

    本文内容       本文我将在WinForm篇前面两篇文章所介绍的案例基础上介绍字典编辑场景中应用DataUIMapper组件,有关于DataUIMapper组件的介绍请参考.NET快速开发实践之应用IExtenderProvider     }        今天的例子就到这儿,在UI编程中还会涉及到控件的焦点跳车、输入验证、输入法控件等一个辅助的扩展编程技术,在本系列中将不在详细讲述,有关于这些内容,请参考.NET快速开发实践中的IExtenderProvider 扩展组件、.NET快速开发实践之应用IExtenderProvider实现输入法自动切换、.NET快速开发实践之应用IExtenderProvider实现控件焦点跳转等几篇文章。       

    1.3K90发布于 2018-01-12
  • 来自专栏张善友的专栏

    GridView控件使用经验

    ItemTemplate>             </asp:TemplateField> ObjectDataSource In Depth Combining a BuildProvider and IExtenderProvider

    1.4K90发布于 2018-01-19
  • 来自专栏张善友的专栏

    codeproject 几篇asp.net文章

    using ASP.NET http://www.codeproject.com/aspnet/MasterPagesASP.asp Combining a BuildProvider and IExtenderProvider

    1.5K60发布于 2018-01-22
  • 来自专栏centosDai

    CA1721:属性名不应与 get 方法冲突

    备注 如果“Get”方法是由实现 IExtenderProvider 接口所引起,则可排除此警告。 配置代码以进行分析 使用下面的选项来配置代码库的哪些部分要运行此规则。

    5000编辑于 2022-02-23
  • 来自专栏centosDai

    CA1721:属性名不应与 get 方法冲突

    备注 如果“Get”方法是由实现 IExtenderProvider 接口所引起,则可排除此警告。 配置代码以进行分析 使用下面的选项来配置代码库的哪些部分要运行此规则。

    64300编辑于 2022-02-19
  • 来自专栏centosDai

    CA1721:属性名不应与 get 方法冲突

    备注 如果“Get”方法是由实现 IExtenderProvider 接口所引起,则可排除此警告。 配置代码以进行分析 使用下面的选项来配置代码库的哪些部分要运行此规则。

    5300编辑于 2022-02-25
  • 来自专栏c#Winform自定义控件系列

    (七十六)c#Winform自定义控件-表单验证组件

    38 public string ErrorMsg { get; set; } 39 } 添加一个类VerificationComponent继承Component,实现接口 IExtenderProvider cref="System.ComponentModel.Component" /> 31 /// Implements the <see cref="System.ComponentModel.<em>IExtenderProvider</em> <seealso cref="System.ComponentModel.Component" /> 34 /// <seealso cref="System.ComponentModel.<em>IExtenderProvider</em> )] 39 [DefaultEvent("Verificationed")] 40 public class VerificationComponent : Component, IExtenderProvider

    1.5K40发布于 2019-09-30
  • 来自专栏c#Winform自定义控件系列

    (七十八)c#Winform自定义控件-倒影组件

    添加一个类ShadowComponent 继承Component,实现 IExtenderProvider接口,扩展属性 代码比较少,直接放上来了 1 ///

    2

    67040发布于 2019-09-30
  • 来自专栏痴者工良

    C# 特性 System.ComponentModel 命名空间属性方法大全,System.ComponentModel 命名空间的特性

    ProvidePropertyAttribute 指定 IExtenderProvider 的实施者提供给其他组件的属性的名称。  IExtenderProvider 定义将属性扩展到容器中的其他组件的接口。 IIntellisenseBuilder 提供便于检索生成器的名称并显示该生成器的界面。

    5.7K30发布于 2021-04-26
  • 来自专栏c#Winform自定义控件系列

    (八十九)c#Winform自定义控件-自定义滚动条(treeview、panel、datagridview、listbox、listview、textbox)

    然后覆盖在滚动条上面,然后实现联动 绘制滚动条的工作,你可以参考 (六十九)c#Winform自定义控件-垂直滚动条-HZHControls 开始 添加一个组件ScrollbarComponent, 实现接口IExtenderProvider ProvideProperty("UserCustomScrollbar", typeof(Control))] 12 public class ScrollbarComponent : Component, IExtenderProvider

    3K30发布于 2020-07-03
  • 来自专栏c#Winform自定义控件系列

    (六十九)c#Winform自定义控件-垂直滚动条

    546 } 547 } 548 } 549 } 为了方便使用,我们添加一个组件 新增类ScrollbarComponent,继承 Component, IExtenderProvider ProvideProperty("UserCustomScrollbar", typeof(Control))] 12 public class ScrollbarComponent : Component, IExtenderProvider

    2.5K20发布于 2019-09-29
领券