2014-02-13 2 views
0

guideline 다음, 나는 내 자신의 사용자 정의 컨트롤을 만든 및 webconfig에 등록 : 나는 포함했다 Home.ascx에왜 내 사용자 컨트롤에 액세스 할 수 없습니까?

public partial class usercontrols_LinkBoxAttivita : System.Web.UI.UserControl 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 

    public int MyProp { get; set; } 
} 

이 : 그것은

<myOwnControls:LinkBoxAttivita ID="LinkBoxAttivita1" runat="server" /> 

그것은 작동하고있다 렌더링. 자, Home.ascx.cs의 코드 숨김에서 왜 나는 그것에 접근 할 수 없습니까?

LinkBoxAttivita1이 (가) 존재하지 않는 것 같습니다. 여기에서 MyProp 값을 설정하고 싶습니다.

이 내가 그것을 등록하는 방법입니다

<system.web> 
    <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"> 
     <controls> 
      <add tagPrefix="myOwnControls" tagName="LinkBoxAttivita" src="~/usercontrols/LinkBoxAttivita.ascx" /> 
     </controls> 
    </pages> 
</system.web> 

답변

-1

당신이 디자이너에 UserControl를 끌고 있나요? 그렇지 않으면 디자이너가 페이지에 사용자 정의 컨트롤을 인식하는 데 필요한 @Register 지시문을 만들지 않습니다. (MSDN)에서

How to: Include a User Control in an ASP.NET Web Page

예 :

<%@ Page Language="C#" %> 
<%@ Register TagPrefix="uc" TagName="Spinner" 
    Src="~/Controls/Spinner.ascx" %> 
<html> 
<body> 
<form runat="server"> 
    <uc:Spinner id="Spinner1" 
     runat="server" 
     MinValue="1" 
     MaxValue="10" /> 
</form> 
</body> 
+1

내가 Web.config의 내부를 상기 regitered한다. '<추가 tagPrefix = "myOwnControls"태그 이름 = "LinkBoxAttivita"SRC = "~/추가 된 UserControls/LinkBoxAttivita.ascx"/>': 그래서 페이지에 등록하기 위해 더 이상 모든 시간이 필요하지 않습니다 – markzzz

+0

@markzzz : 죄송합니다. 죄송합니다. 간과 했어요. 당신은 가이드 라인 (이탈리아어 btw)을 따라 왔다고 언급했는데, 어떻게 등록했는지 보여 줄 수 있습니까? 차이가 있어야하기 때문에 그렇지 않으면 작동합니다. 또한,'User Controls'가 중첩되어 있습니까? 여기서 질문은 중첩 된 컨트롤에 문제가 있다고 대답 한 대답이기 때문에 묻습니다. http://stackoverflow.com/questions/680519/in-web-config-is-it-possible-to-register-all-user-controls-in-specified-director –

+0

"중첩"이란 무엇을 의미합니까? web.config에서 어떻게 구성했는지 추가했습니다. 다른 UserControl Home.ascx (다른 폴더에 있음) 안에 포함시킵니다. – markzzz

관련 문제