1

希望一些自定义控件设计器/构建器可以提供帮助

我正在尝试构建我的第一个自定义控件,它是客户详细信息收集表单必不可少的。此表单将有一系列元素,需要对其应用各种样式。理想情况下,我希望 VS 2005/2008 属性界面能够像在控制级别那样应用 CSSClass,即使用可用 CSS Classes 的下拉列表。

以应用于图例标签的类为例

/// <summary>Css Class for Legend</summary>
[Category("Appearance")]
[Browsable(true)]
[DefaultValue("")]
//I am at a loss as to what goes in [Editor]
[Editor(System.Web.UI.CssStyleCollection), typeof(System.Drawing.Design.UITypeEditor))]        
 public string LegendCSSClass
    {
        get { return _LegendCSSClass; }
        set { _LegendCSSClass = value; }
    }

从上面可以看出,我尝试了几个选项,但运气不佳。

希望我缺少一些简单的东西。

我也很乐意提供与

[Editor]
属性

4

1 回答 1

1

将 CssClassProperty 属性添加到您的属性。

[Category("Appearance")]
[Browsable(true)]
[DefaultValue("")]
[CssClassProperty]
public string LegendCSSClass    
{        
   get { return _LegendCSSClass; }        
   set { _LegendCSSClass = value; }    
}

来自 MSDN:在设计时向属性添加级联样式表 (CSS) 编辑功能。

顺便说一句,对于此类问题,Lutz Reflector 是您的朋友。您可以查看应用于 .NET Framework 类中的类似属性的特性。

于 2008-10-17T11:27:04.117 回答