2

System.Web.UI.WebControls.WebControl을 상속 한 컨트롤에는 Font이라는 속성이 있습니다. 유형은 System.Web.Ui.WebControls.FontInfo입니다. 디자이너에서 이러한 컨트롤로 작업 할 때 코드 숨김에서이 ​​같은 WebControls 작업 할 때"Font"속성 동작 다시 만들기

, 그것은 등 Font-Bold, Font-Italic 같은 여러 속성에 Font 재산을 나누기 만 Font 재산 거기에 (아무 Font-Bold, Font-Italic, 기타).

WebControls를 만들 때이 동작을 수동으로 어떻게 다시 만들 수 있습니까? 특히 System.ComponentModel 속성 조합은 Intellisense에서 이러한 속성을 표시하거나 숨길 수 있습니까?

답변

1

당신은 부울 속성으로 굵게, 기울임 등 액세스 할 수 있어야합니다 : 속성 항복가 자동으로 일어나고

http://msdn.microsoft.com/it-it/library/system.web.ui.webcontrols.fontinfo.aspx

void Page_Load(object sender, EventArgs e) 
    { 
    // When the page loads, set the the myLabel Label control's FontInfo properties. 
    // Note that myLabel.Font is a FontInfo object. 

    myLabel.Font.Bold = true; 
    myLabel.Font.Italic = false; 
    myLabel.Font.Name = "verdana"; 
    myLabel.Font.Overline = false; 
    myLabel.Font.Size = 10; 
    myLabel.Font.Strikeout = false; 
    myLabel.Font.Underline = true; 

    // Write information on the FontInfo object to the myLabel label. 
    myLabel.Text = myLabel.Font.ToString(); 

    } 
+0

오른쪽입니다. 그러나 Font 속성은 디자이너 모드에서 코드 뒤에 만 표시됩니다. 또한 Font-Bold, Font-Italic 등은 디자이너 모드에서만 코드 뒤에 표시되지 않습니다. 그런 식으로 행동하는 내 웹 컨트롤에서 속성을 만들 수 있기를 원합니다. – SAGExSDX

1

.

당신의 속성을 가진 속성이 컨트롤이있는 경우 자신의

public class ServerControl1 : WebControl 
{ 
    public CompositeItem Composite { get; set; } 

    public ServerControl1() 
    { 
     Composite = new CompositeItem(); 
    } 
} 

public class CompositeItem 
{ 
    public bool ItemOne { get; set; } 
    public string ItemTwo { get; set; } 
    public int ItemThree { get; set; } 
} 

당신이

<cc:ServerControl1 runat="server" ID="scOne" 
    Composite-ItemOne="true" Composite-ItemTwo ="stringx"/> 

과 같이 작동합니다 의미하는 영문의 글꼴 굵게 구문을 사용할 수 있습니다 예상했다. 그러나 자동 완성 기능이 작동하지 않으며 System.ComponentModel 속성의 조합이 글꼴 - 굵게와 같이 작동하는 데 필요한지 확실하지 않습니다.

+0

아 ~ 나는 그 확장 속성을 제공한다는 것이 자동적인지 몰랐다. 실제로이 시점에서의 질문은'System.ComponentModel' 속성의 조합이'System.Web.UI.WebControls.WebControl'을 상속받은 웹 콘트롤에서 발견되는 행동으로 이어질 것이라고합니다. – SAGExSDX