У меня есть пользовательский элемент управления в ASP.NET (VB.NET в коде позади), определяется с ASCX:Пользовательский контроль становится родовым «UserControl», а не его фактического типа в классе конструктора
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="MyControl.ascx.vb" Inherits="Mynamespace.Controls.MyControl" %>
<!-- some html and other custom controls-->
И в код позади:
Namespace Controls
Public Class MyControl
Inherits System.Web.UI.UserControl
Это набор в библиотеку. Другой проект использует этот контроль на странице:
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="mypage.aspx.vb"
Inherits="myproject.mypage" culture="auto" meta:resourcekey="Page" uiculture="auto"
Transaction="RequiresNew" MasterPageFile="Mynamespace.Master"
Theme="ThemeBase2" StylesheetTheme="ThemeBase2" %>
<%@ Register tagprefix="Controls" tagname="MyControl" src="../Controls/MyControl.ascx" %>
<%-- some asp.net --%>
<Controls:MyControl ID="mycontrol1" runat="server"
MyCustomProperty="value" />
Однако, когда я строю, я получаю сообщение об ошибке говорящее
«MyCustomProperty» не является членом «System.Web.UI.UserControl ».
А на странице designer.vb я вижу:
Protected WithEvents mycontrol1 As Global.System.Web.UI.UserControl
Как убедиться, что он становится:
Protected WithEvents mycontrol1 As Global.Mynamespace.Controls.MyControl
?
Я не уверен, что ссылки * пользовательские элементы управления * (в отличие от обычных элементов управления сервером) в другом проекте являются поддерживаемым сценарием. –