屏蔽.NET自定义开发组件中的属性
2008-01-05 10:49:27 来源:WEB开发网核心提示:有一个问题请教一下兄台,对于继续自microsoft的.net framework中现有的组件,屏蔽.NET自定义开发组件中的属性,怎么将一些属性屏蔽掉,就是新的组件不提供继续来的属性, 答应设计器从通过 TypeDescriptor 公开的属性集中更改或移除项,/**//***命名空间:MSPlus.Web.UI.D
有一个问题请教一下兄台,对于继续自microsoft的.net framework中现有的组件,怎么将一些属性屏蔽掉,就是新的组件不提供继续来的属性,比如继续Panel新编写EPanel,对于panel的属性的BackColor怎么屏蔽掉??
这个问题解决方法如下:
第一步:在你的控件类中定义设计时中提供服务的类
[Designer(typeof (MSPlus.Web.UI.Design.WebControls.ButtonDesigner))]
[Description( "MSPlus WebControl Button" )]
[Designer(typeof (MSPlus.Web.UI.Design.WebControls.ButtonDesigner))]
public sealed class Button: MSPlusWebControl, IPostBackEventHandler
{
}
第二步:新增一个设计时服务类,这个类继续 System.Web.UI.Design.ControlDesigner
第三步:重写PostFilterPRoperties()方法,
答应设计器从通过 TypeDescriptor 公开的属性集中更改或移除项。
/**//**
* 命名空间: MSPlus.Web.UI.Design.WebControls
* 类: ButtonDesigner
*
* 作者: Mack.Z
* 完成日期: 2003-12-21
* 版权信息: MSLULU (2000.10.10)
**/
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Collections;
namespace MSPlus.Web.UI.Design.WebControls
{
/**////
/// ButtonDesigner 的摘要说明。
///
public class ButtonDesigner:System.Web.UI.Design.ControlDesigner
{
public ButtonDesigner()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
protected override void PostFilterProperties( IDictionary Properties )
{
Properties.Remove( "Height" );
Properties.Remove( "BackColor" );
Properties.Remove( "BorderWidth" );
Properties.Remove( "Font" );
Properties.Remove( "ForeColor" );
Properties.Remove( "TabIndex" );
Properties.Remove( "ToolTip" );
Properties.Remove( "Enabled" );
Properties.Remove( "EnableViewState" );
}
}
}
假如大家有控件开发上的问题,也可以在我的主页上留言
- ››定义名称时自动代码提示所需的后缀
- ››Netpas加速 让非电信宽带用户流畅上网
- ››net中fckediter的图片上传时候点击\浏览服务器\出...
- ››Netmsg局域网聊天程序
- ››NetAirus指控苹果iPhone侵犯其专利
- ››Netflix 在线影视播放程序将登陆 iPhone
- ››屏蔽 iPhone 3GS 的“语音控制”系统的方法
- ››Net中各种不同的对象创建方式的速度差异
- ››NetNewsWire 功能简单 界面快速 Reader 浏览器
- ››NET-使用Js调用WebService
- ››Net 应用程序如何在32位操作系统下申请超过2G的内...
- ››NET 4.0新特性-- Corrupted State Exceptions
赞助商链接