2009-02-25 5 views
0

패널과 4 개의 문자열 및 정수 속성이 포함 된 사용자 정의 컨트롤을 만듭니다. 디자인 타임 중에 사용자 정의 컨트롤의 속성 텍스트를 표시하고 싶습니다. 어떻게해야합니까? 예를 찾는 데 어려움을 겪고 있습니다.디자인 타임에 사용자 정의 컨트롤에 텍스트 문자열을 표시하는 방법은 무엇입니까?

+0

내가 바보 생각합니다. 여기에 코드가 있습니다. 대해 designMode 그런 다음 Me.lblPageNum.Visible = 진정한 그렇지 Me.lblPageNum.Visible = 거짓 최종면하는 경우 –

답변

1

이상한 질문이지만 일반적인 문제는 속성을 숨기는 것입니다. 다음과 같이 설정하십시오.

Imports System.ComponentModel 

Public Class UserControl1 

    Private mAardvark As Integer 

    <DefaultValue(0)> _ 
    Public Property Aardvark() As Integer 
     Get 
      Return mAardvark 
     End Get 
     Set(ByVal value As Integer) 
      mAardvark = value 
     End Set 
    End Property 
End Class 
0

에이미, 당신이 뭘하고 있는지 정확하게 말하기 어렵습니다.

사용자 정의 컨트롤에 속성이있는 경우 디자인보기에서 속성 창에서 해당 속성을보고 편집 할 수 있습니다.

따라서 속성 창에서 nobugz 답을 사용하면 Aardvark 속성 값을 설정할 수 있습니다.

텍스트 상자와 같이 속성의 값을보고 싶다는 것입니까?

그런 경우 속성에서 반환 된 값이 값이 아닌지 확인해야합니다. 그리고이 속성은 Load와 같은 이벤트에서 설정됩니다.

또한 디자인 할 때 usercontrol보기에서 값을 그리지 않습니다. 양식에 컨트롤을 놓으면 텍스트 상자에 속성 값을 볼 수 있습니다.

0

내가 무엇을 요구하고 있는지 정확히 모르겠지만 디자인 타임에 컨트롤에 속성 텍스트를 표시하고이를 런타임에 숨기고 싶다고 가정했습니다.

이 경우 속성 값이 변경 될 때마다 Label.Text 값을 업데이트해야합니다.

컨트롤에 lblPageNum 레이블과 PageNum 속성이 포함되어 있다고 가정했습니다.

Public Class TheUserControl 

Private myPageNum As String 

Public Property PageNum() As String 
    Get 
     PageNum = myPageNum 
    End Get 
    Set(ByVal value As String) 
     myPageNum = value 
     ' This is where we set the value of the label at design-time 
     lblPageNum.Text = myPageNum 
    End Set 
End Property 

Public Sub New() 

    ' This call is required by the Windows Form Designer. 
    InitializeComponent() 

    ' Add any initialization after the InitializeComponent() call. 

End Sub 

Private Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    If Me.DesignMode Then 
     Me.lblPageNum.Visible = True 
    Else 
     Me.lblPageNum.Visible = False 
    End If 
End Sub 

최종 클래스

관련 문제