我有一个带有 MasterPage 的简单 ASP.NET 页面。在 MasterPage 中,我有两个登录字段:
<input type="text" runat="server" id="txtUserName"/>
<input type="text" runat="server" id="txtPassword"/>
当控件呈现到页面时,ASP.NET 呈现以下内容:
<input type="text" runat="server" id="ctl00_txtUserName" name="ctl00$txtUserName"/>
<input type="text" runat="server" id="ctl00_txtPassword" name="ctl00$txtPassword"/>
如果我理解正确,name
属性对应于UniqueID
控件的属性。但是,当我调试Page_Load
并尝试查看UniqueID
这些字段时,它们具有不同的值(ctl0$txtUserName
和ctl0$txtPassword
分别)!
请注意,这似乎不是使用此 MasterPage 的所有页面上的问题。它们中的大多数都可以正常工作ctl0$txtUserName
并ctl0$txtPassword
在渲染和Page_Load
.
知道什么可能导致 ASP.NETUniqueID
为控件呈现不同于它在中使用的控件Page_Load
吗?