다음을 통해 공유


웹 파트 또는 응용 프로그램 페이지를 위해 재사용 가능한 컨트롤 만들기

Visual Studio를 사용하면 SharePoint에서 실행되는 응용 프로그램 페이지와 웹 파트에서 사용할 수 있는 재사용 가능한 사용자 지정 컨트롤을 만들 수 있습니다. 이러한 컨트롤을 사용자 정의 컨트롤이라고 합니다. 사용자 정의 컨트롤에 대한 자세한 내용은 ASP.NET 사용자 정의 컨트롤을 참조하십시오.

사용자 정의 컨트롤 만들기

사용자 정의 컨트롤을 만들려면 빈 SharePoint 프로젝트사용자 정의 컨트롤을 추가합니다. 자세한 내용은 방법: SharePoint 응용 프로그램 페이지 또는 웹 파트를 위한 사용자 정의 컨트롤 만들기를 참조하십시오.

사용자 정의 컨트롤 항목을 추가하면 프로젝트에 폴더가 만들어지고 폴더에 여러 가지 파일이 추가됩니다. 다음 표에서는 각 파일에 대해 설명합니다.

파일

설명

사용자 정의 컨트롤 파일

사용자 정의 컨트롤을 정의합니다. 이 파일에 컨트롤과 태그를 추가하여 사용자 정의 컨트롤을 디자인합니다.

코드 파일

사용자 정의 컨트롤의 코드 숨김 파일이 들어 있습니다. 이벤트를 처리하는 코드를 이 파일에 추가합니다.

디자이너 코드 파일

디자이너에서 생성된 코드가 들어 있으며 이 파일을 직접 편집하면 안 됩니다.

사용자 정의 컨트롤 디자인

Visual Studio의 Visual Web Developer 디자이너를 사용하여 사용자 정의 컨트롤을 디자인합니다. 이 디자이너는 프로젝트에서 사용자 정의 컨트롤 파일을 두 번 클릭하면 나타납니다. 이 디자이너를 사용하는 방법에 대한 자세한 내용은 Visual Web Developer 콘텐츠 맵을 참조하십시오.

사용자 정의 컨트롤 사용

응용 프로그램 페이지나 웹 파트에 사용자 정의 컨트롤을 포함해야 SharePoint에 사용자 정의 컨트롤이 표시됩니다.

사용자 정의 컨트롤을 응용 프로그램 페이지에 포함하려면 @ Register 지시문을 응용 프로그램 페이지에 추가한 다음 페이지에서 하나 이상의 콘텐츠 자리 표시자 안에 사용자 정의 컨트롤을 선언합니다. 표준 ASP.NET 웹 페이지에서 이 작업을 수행하는 방법에 대한 예제는 방법: ASP.NET 웹 페이지에 사용자 정의 컨트롤 포함을 참조하십시오.

사용자 정의 컨트롤을 웹 파트에 포함하려면 웹 파트 코드 파일의 웹 파트 Controls 컬렉션에 사용자 정의 컨트롤을 추가합니다. 다음 예제에서는 웹 파트의 Controls 컬렉션에 사용자 정의 컨트롤을 추가합니다.

<ToolboxItemAttribute(false)> _
Public Class VisualWebPart1
    Inherits WebPart

    Private Const _ascxPath As String = "~/_CONTROLTEMPLATES/VB/VisualWebPart1/VisualWebPart1UserControl.ascx"

    Public Sub New()
    End Sub

    Protected Overrides Sub CreateChildControls()
        Dim control As Control = Page.LoadControl(_ascxPath)
        Controls.Add(control)
        MyBase.CreateChildControls()
    End Sub

    Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
        MyBase.RenderContents(writer)
    End Sub

End Class
[ToolboxItemAttribute(false)]
public class VisualWebPart1 : WebPart
{
    private const string _ascxPath = @"~/_CONTROLTEMPLATES/CS/VisualWebPart1/VisualWebPart1UserControl.ascx";

    public VisualWebPart1()
    {
    }

    protected override void CreateChildControls()
    {
        Control control = this.Page.LoadControl(_ascxPath);
        Controls.Add(control);
        base.CreateChildControls();
    }

    protected override void RenderContents(HtmlTextWriter writer)
    {
        base.RenderContents(writer);
    }

}

사용자 정의 컨트롤 디버깅

사용자 정의 컨트롤을 디버깅하려면 SharePoint 프로젝트의 응용 프로그램 페이지나 웹 파트에 사용자 정의 컨트롤이 포함되어 있어야 합니다. Visual Studio 프로젝트의 코드를 디버깅할 때와 같은 방법으로 사용자 정의 컨트롤의 코드를 디버깅할 수 있습니다.

Visual Studio 디버거를 시작하면 Visual Studio에서 SharePoint 사이트가 열립니다.

SharePoint에서 사용자 정의 컨트롤이 포함된 응용 프로그램 페이지를 엽니다. 사용자 정의 컨트롤이 웹 파트에 포함되어 있으면 해당 웹 파트를 SharePoint의 웹 파트 페이지에 추가합니다.

SharePoint 프로젝트 디버깅에 대한 자세한 내용은 SharePoint 솔루션 문제 해결을 참조하십시오.

관련 항목

제목

설명

방법: SharePoint 응용 프로그램 페이지 또는 웹 파트를 위한 사용자 정의 컨트롤 만들기

SharePoint에서 실행되는 응용 프로그램 페이지와 웹 파트에서 사용할 수 있는 재사용 가능한 사용자 지정 컨트롤을 만드는 방법을 보여 줍니다.

Visual Web Developer 작업

프로젝트에서 웹 페이지를 열 때 나타나는 디자이너를 사용하는 방법에 대해 설명합니다.