MasterPageを含む単純なASP.NETページがあります。MasterPage内には、2つのログインフィールドがあります。
<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.NETがUniqueID
コントロールに対して使用するものとは異なるレンダリングを行う原因となる可能性のあるアイデアはありますPage_Load
か?