2013-10-04 79 views
0

我知道這已被問了數百次,但我無法找到解決我的問題。 我有這個ASCX文件:從ascx代碼隱藏的asp控制

<%@ Control Language="C#" AutoEventWireup="true" Inherits="FrontClass.CreateClientPortals.TopNavBar, FrontClass.CreateClientPortals, Version=1.0.0.0, Culture=neutral, PublicKeyToken=40f3875c9d373801"%> 
<div> 
    <asp:Literal ID="test1" runat="server" visible="true">some text</asp:Literal> 
</div> 

而這個隱藏代碼:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Web.UI.WebControls; 

namespace FrontClass.CreateClientPortals 
{ 
    public partial class TopNavBar : System.Web.UI.UserControl 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      test1.visible = false; 
     } 
    } 
} 

當嘗試編譯,我收到錯誤消息: 名稱「test1的」不在當前情況下存在

我應該注意到這兩個文件不在同一個目錄下(它們是否需要?),我似乎無法生成designer.cs文件(嘗試在設計模式下編輯ascx文件,但沒有出現)。從另一個項目複製的ascx文件。

感謝幫忙

回答

1

沒有設計文件,你需要添加引用手動TEST1。將此添加到您的代碼隱藏中。 Studio創建將所有內容鏈接在一起的部分類,並且不包含缺少參考的設計器文件。

protected global::System.Web.UI.WebControls.Literal test1;

+0

感謝它的工作! –