2012-02-06 5 views
0

Sharepoint 2010에 대한 webpart를 만들고 있습니다. Sharepoint 사용자 인터페이스를 통해 편집 할 수있는 사용자 지정 속성을 만들 수 있습니다. 문제 없습니다.Sharepoint 2010 사용자 지정 속성

문제는 다음과 같습니다. 인터넷에 표시된 것처럼 Webpart.cs의 모든 코드를 덤프하는 대신 사용자 지정 개체 (Properties.cs)를 사용하여 동일한 속성을 정의하고 편집 기능을 사용 가능하게하고 싶습니다. .

이 방법이 있습니까? 왜냐하면 나는 webpart 클래스에서 모든 속성 (편집 가능 여부)을 펌핑하고 싶지 않기 때문입니다.

답변

0

예, 당신은 그것을 할 수 있습니다 ... 상속을 사용하고

1 먼저 재정을 CreateChildControls 방법의 예와는 WebPart 클래스에서 상속 기본 클래스를 만들려면 다음과 같이 기본 클래스를 작성하여

<XmlRoot("MyWebPartBase")> _ 
<ToolboxItemAttribute(True)> _ 
Public Class BaseWebPart 
    Inherits WebPart 

Protected Overrides Sub CreateChildControls() 
     Dim control As Object = Page.LoadControl(ascxPath) 

     If control IsNot Nothing Then 
      control.WebPartControl = Me 
      Controls.Add(CType(control, Control)) 
     End If 
    End Sub 
'Add public properties here 


End Class 

2 -이 기본 클래스에서 속성을 구현하고 webpart 클래스 대신 위에서 언급 한 기본 클래스의 webparts를 고유합니다.

3 사용자 정의 컨트롤에 액세스하기 위해 공용 속성을 구현하는 사용자 정의 컨트롤에 대한 기본 클래스를 만듭니다.

Public Class BaseUserControl 
    Inherits UserControl 

    Private _WebPartControl As BaseWebPart 

    Public Property WebPartControl As BaseWebPart 
     Get 
      Return _WebPartControl 
     End Get 
     Set(ByVal value As BaseWebPart) 
      _WebPartControl = value 
     End Set 
    End Property 


Public ReadOnly Property WebPartID() As String 
    Get 
     Return WebPartControl.ID 
    End Get 
End Property 
End Class 
관련 문제