2011-02-02 21 views
0

我有我的基本形式之一下面的代碼:試圖獲得一個標籤的文本屬性格式暴露

using System; 
using System.Drawing; 
using Telerik.WinControls.UI; 

namespace ExciteEngine2.MainApplication.BaseUI { 

    public partial class BaseCreateForm : BaseForm { 

    public BaseCreateForm() { 
     InitializeComponent(); 
     SetupLookAndFeelThings(); 
     Header = Tag.ToString(); 
    } 

    public void SetupLookAndFeelThings() { 
     LabelHeader.Font = new Font(Font.FontFamily, 14.25F, Font.Style, Font.Unit, Font.GdiCharSet); 
    } 

    protected RadLabel HeaderLabel { 
     get { 
     return LabelHeader; 
     } 
     set { 
     LabelHeader = value; 
     } 
    } 

    protected String Header { 
     get { 
     return LabelHeader.Text; 
     } 
     set { 
     LabelHeader.Text = value; 
     } 
    } 

    protected Image HeaderImage { 
     get { 
     return LabelHeader.Image; 
    } 
     set { 
     LabelHeader.Image = value; 
    } 
    } 

    private void RadButtonCancel_Click(object sender, EventArgs e) { 
     Close(); 
    } 

    } 
} 

所以,我有一對夫婦,讓我設置標題和字幕屬性。但是這些屬性在繼承窗體的可視化設計器屬性網格中不可見。例如,我真的需要設置基本標籤的圖像。我可以做些什麼來將這些屬性放入屬性網格中?

回答

0

好了,經過多次谷歌,我想出了這個:

using System; 
using System.ComponentModel; 
using System.Drawing; 

namespace ExciteEngine2.MainApplication.BaseUI { 

    public partial class BaseCreateForm : BaseForm { 

    public BaseCreateForm() { 
     InitializeComponent(); 
     SetupLookAndFeelThings(); 
    } 

    public void SetupLookAndFeelThings() { 
     LabelHeader.Font = new Font(Font.FontFamily, 12.25F, Font.Style, Font.Unit, Font.GdiCharSet); 
    } 

    [Category("Appearance"), DisplayName("HeaderText"), DescriptionAttribute("Text of the form's header."), Browsable(true)] 
    public String HeaderText { 
     get { 
     return LabelHeader.Text; 
     } 
     set { 
     LabelHeader.Text = value; 
     } 
    } 

    [Category("Appearance"), DisplayName("HeaderImage"), DescriptionAttribute("Image of the form's header."), Browsable(true)] 
    public Image HeaderImage { 
     get { 
     return PictureTitle.Image; 
     } 
     set { 
     PictureTitle.Image = value; 
     } 
    } 

    private void RadButtonCancel_Click(object sender, EventArgs e) { 
     Close(); 
    } 

    } 
} 

不得不從ComponentModel添加這些屬性。