1
我想構建一個自定義控件ASP.NET 我通過在VS2010中創建一個Web應用程序並創建一個新的.ascx頁面開始。該頁面被稱爲「TestBox」,並且它只是一個帶有「This is a test」的單個TextBox控件作爲文本。C#ASP.NET自定義控件沒有顯示
我構建了該項目,然後將DLL包含在另一個網站中,以確保我能夠移動控件。基於一個教程,我發現here我添加以下代碼行至頁面頂部:
<%@ Register TagPrefix="TestControl" Namespace="TestControl" Assembly="TestControl" %>
然後我說這個網頁本身:
<TestControl:TestBox ID="TestBox1" runat="server" />
代碼編譯和頁面加載時不會拋出任何錯誤,但是當它加載時它是完全空白的。通過引入故意的運行時錯誤,我確定TextBox確實正在加載,但控件本身仍然沒有顯示出來。
我錯過了什麼嗎?
代碼的系統testControl:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TestBox.ascx.cs" Inherits="TestControl.TestBox" %>
<asp:TextBox ID="TextBox1" runat="server" ontextchanged="TextBox1_TextChanged">This is a test</asp:TextBox>
我沒碰過的設計代碼或以任何方式的.cs代碼。
編輯:想通了。我爲.CS文件聲明瞭一個命名空間,但不是.ASPX文件本身。
你看過呈現的HTML,看看有沒有線索? – CodingGorilla
只是看着它,沒有,沒有任何證據表明盒子存在。 實際上,有這個位: '
這很正常,這是頁面的視圖狀態。你可以發佈你的'TestControl'的代碼嗎? – CodingGorilla