2011-01-11 4 views
0

У меня есть очень простой пользовательский элемент управления в моем проекте веб-сайта, который имеет декларации общественной собственности следующимКак изменить общедоступные свойства пользовательского элемента управления?

public DateTime StartDate 
    { 
     get 
     { 
      return _startDate; 
     } 
     set 
     { 
      _startDate = value; 
     } 
    } 
    public DateTime EndDate 
    { 
     get 
     { 
      return _endDate; 
     } 
     set 
     { 
      _endDate = value; 
     } 
    } 

Когда я перетащить файл ASCX к одному из моей странице ASPX, и когда я иду в код позади ASPX страницы я могу получить доступ к свойствам элементов управления через intelisense, но когда я запускаю проект через визуальную студию, я получаю ошибку «Имя« uctTest1 »не существует в текущем контексте« любые предложения по исправлению ошибки?

Это линия, где ошибка показывает, когда я запустить проект uctTest.StartDate = DateTime.Now;

ASPX страницы разметки:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="removetest.aspx.cs" Inherits="removetest" %> 
<%@ Register src="~/uctTest.ascx" tagname="testCtl" tagprefix="uc1" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title></title> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 

    <uc1:testCtl ID="uctTest1" runat="server" /> 

</div> 
</form> 
</body> 
</html> 

страницы ASPX код позади:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     uctTest1.StartDate = DateTime.Now; 

    } 
} 
protected void btnEdit_Click(object sender, EventArgs e) 
{ 

} 
+1

Возможно, было бы более полезно, если бы вы отправили строку кода, где вы получаете эту ошибку. Ошибка, похоже, не имеет ничего общего с общедоступными свойствами самого элемента управления – InSane

ответ

0

Я имел другую страницу ASPX с другим именем файла в веб-проекте, который другой разработчик скопировали с моей страницы ASPX, которая имела такой же <%@ Page Language="C#" AutoEventWireup="true" CodeFile="aspxpagename.aspx.cs" Inherits="aspxpageClass" %> директиву в этой скопированной страницы. Несмотря на то, что этот скопированный paged не имел пользовательского контроля странно страницы, я работал сообщал об ошибке. Изменение кода кода этой страницы, наследует атрибуты к различным значениям, устраняет проблему.

0

Это кажется, что вам не хватает директива @Register в файле .aspx, ссылающаяся на путь управления .ascx.

http://msdn.microsoft.com/en-us/library/c76dd5k1(v=vs.71).aspx

+0

Нет, у меня также есть тег Register <% @ Register src = "uctTest.ascx" tagname = "testCtl" tagprefix = "uc1"%> – DSharper

+0

Can вы отправляете код .aspx –

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