2013-10-04 9 views
0

Я знаю, что это было задано сто раз, однако я не могу найти решение моей проблемы. У меня есть этот ASCX файл:asp control from ascx codebehind

<%@ 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> 

И это CodeBehind:

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 file Я скопировал из другого проекта.

благодарит за помощь

ответ

1

Без файла конструктора вам необходимо добавить ссылки на test1 вручную. Добавьте это в свой код. Studio создает частичные классы, которые связывают все вместе, и без файла дизайнера вам не хватает ссылки.

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

+0

спасибо, что это сработало! –

 Смежные вопросы

  • Нет связанных вопросов^_^