2009-04-28 4 views
0

웹 사이트 프로젝트를 VS 2008의 웹 응용 프로그램 프로젝트로 변환 중이며 동적으로 사용자 정의 컨트롤을로드하는 것과 관련된 쿼리를 실행했습니다. 웹 applciation 프로젝트에 updateing 때웹 응용 프로그램 프로젝트 @ 참조 태그

<%@ Reference Control="~/UserControls/MyUserControl.ascx" %> 

다음 페이지에서 나는 단순히라는 은 ...

Dim ucSupplierDetails As New ASP.usercontrols_myusercontrol_ascx 

는 슬프게도,이 더 이상 유효 라인입니다. 대안이 있습니까?

답변

3

동적으로 여기에 사용자 컨트롤을로드 대안입니다하려면

Dim ucSupplierDetails As New UserControl 
ucSupplierDetails.LoadControl("~/UserControls/MyUserControl.ascx") 
placeholder.Controls.Add(ucSupplierDetails) 

편집 : 여기 제 2 옵션을 수동으로 네임 스페이스에 사용자 컨트롤을 넣어 :

Namespace MyUserControlNamespace 

    Public Class MyUserControl Inherits System.Web.UI.UserControl 

    End Class 

End Namespace 

사용자 정의 컨트롤의 클래스 선언을 변경하는 것을 잊지 마십시오 (상속 a

Dim ucSupplierDetails As New MyUserControlNamespace.MyUserControl 
: 마지막 줄에 ttribute) :이 공간의에 의해

<%@ Control Language="VB" AutoEventWireup="true" 
    CodeFile="MyUserControl.ascx.vb" 
    Inherits="MyUserControlNamespace.MyUserControl" %> 

그리고 지금, 당신은 액세스 할 수 있습니다

2

것은 <%@ Import namespace="Namespace.Of.Your.Usercontrol" %>를 사용해보십시오 대신