ASP.NET Masterseiten Defaultüberschreibung
-
26-09-2019 - |
Frage
Ich habe eine Masterseite mit einem Formularelement und dem default Attribute auf ein serverseitigen Image. Auf einer meiner Seiten möchte ich „überschreiben“ die Masterpage default Attribut durch die Formulare Default in dem Ereignis Page Load Einstellung.
d.h Auf mater Seite:
<form id="form1" runat="server" defaultbutton="btnSearch">....</from>
Auf der Seite Page_Load Fall, dass "überschreiben" das Master-Seite Attribut:
this.Form.DefaultButton = this.ibRecalc.ID;
Es Fehler mit:
Die Default von ‚form1‘ muss die ID eines Steuer des Typs sein IButtonControl
Ich bin mit Bild Tasten, welche Geräte IButtonControl
Alle Ideen, was ich vielleicht falsch oder eine andere Art und Weise tun, um das Problem zu nähern?
Danke
Lösung
Mit UniqueId. Da Sie mehr Server-Steuerelemente mit der gleichen Server-ID, dh in einem Gridview haben können, um die Rahmen Bedürfnisse der einzigartigen ID zu passen bis zu.
this.Form.DefaultButton = this.ibRecalc.UniqueID;
Andere Tipps
Sie könnten versuchen, die „Default“ Eigenschaft eines Panel mit ...
Zeigen Sie mit Taste oder ganze Seite oder div in asp: Panel
// Startleiste
asp: Panel ID = "pnlOpsCallSummay" runat = "server" Default = "btnSearch"
............
// Steuerung Ihrer Anforderung
..........
asp: Button ID = "btnSearch" runat = "server" Text = "Suchen"
in der Nähe der pannel
Keine Notwendigkeit, die Masterseite Taste Aufschalten
Wenn Sie das Panel innerhalb der Anmelde der Vorlage zu bewegen: -
<asp:login id="Login2" runat="server" loginbuttontype="Image">
<layouttemplate>
<asp:`enter code here`panel id="Panel1" runat="\
server"defaultbutton="LoginImageButton">
</asp:Panel>
</LayoutTemplate>
</asp:Login>
Dann wird es ohne Code arbeiten. Sie können loginbuttontype = „Bild“ oder Link-Taste oder entsprechend Ihrer Anforderung eingestellt.