Gewusst wie: Festlegen des Fokus auf ein ASP.NET-Webserversteuerelement
Aktualisiert: November 2007
Falls es für die Anwendung wichtig ist, können Sie den Fokus mithilfe von Servercode auf ein bestimmtes ASP.NET-Webserversteuerelement festlegen. Sie können den Fokus dynamisch auf ein bestimmtes Steuerelement festlegen oder ein Steuerelement angeben, das den Fokus standardmäßig erhalten soll. Sie können den Standardfokus für das gesamte Formular oder für ein Steuerelement festlegen, das einem Panel-Steuerelement untergeordnet ist.
Sie können den Fokus auf folgende Steuerelementtypen festlegen:
Button-Steuerelement, LinkButton-Steuerelement und ImageButton-Steuerelement
CheckBox-Steuerelement
DropDownList-Steuerelement
FileUpload-Steuerelement
HyperLink-Steuerelement
ListBox-Steuerelement
RadioButton-Steuerelement
TextBox-Steuerelement
Sie können den Fokus auch auf Steuerelemente festlegen, die eines oder mehrere der oben aufgelisteten Steuerelemente enthalten. Zum Beispiel können Sie den Fokus auf ein Login-Steuerelement festlegen. In diesem Fall wird der Fokus auf das erste geeignete Steuerelement innerhalb des Login-Steuerelements festgelegt.
Wenn Sie den Fokus auf ein Steuerelement festlegen, das nicht geeignet, ausgeblendet oder deaktiviert ist, wird der Aufruf grundsätzlich ignoriert. Wenn Sie versuchen, den Fokus auf ein nicht visuelles Steuerelement (z. B. ein Datenquellensteuerelement) festzulegen, wird eine Ausnahme ausgelöst.
Hinweis: |
---|
Das Festlegen des Fokus setzt voraus, dass Clientskripts im Browser aktiviert sind. |
So legen Sie den Fokus auf ein ASP.NET-Webserversteuerelement fest
Rufen Sie die Focus-Methode des Steuerelements auf.
- oder -
Rufen Sie die SetFocus-Methode der Seite auf, und übergeben Sie ihr die ID des Steuerelements, auf das Sie den Fokus festlegen möchten.
Im folgenden Codebeispiel wird gezeigt, wie der Fokus auf das Steuerelement mit der ID TextBox1 festgelegt wird:
Sicherheitshinweis: In diesem Beispiel ist ein Textfeld für eine Benutzereingabe enthalten. Dies stellt ein potenzielles Sicherheitsrisiko dar. Standardmäßig stellt die ASP.NET-Seite sicher, dass die Benutzereingabe keine Skript- oder HTML-Elemente enthält. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.
[Visual Basic] Protected Sub Page_Load(ByVal sender As Object, _ ByVal e As System.EventArgs) TextBox1.Focus() End Sub
protected void Page_Load(object sender, EventArgs e) { TextBox1.Focus(); }
So legen Sie den Standardfokus in einem Formular oder Bereich fest
Legen Sie das DefaultFocus-Attribut des form-Elements in der Seite bzw. eines Panel-Steuerelements fest.
Im folgenden Codebeispiel wird eine Seite gezeigt, in der der Standardfokus auf das Steuerelement TextBox1 festgelegt ist:
<%@ Page Language="VB" %> <html> <head > <title>Test Page</title> </head> <body> <form id="form1" defaultfocus="TextBox1" > <div> <asp:TextBox ID="TextBox1" ></asp:TextBox> <br /> <asp:Button ID="Button1" Text="Button" /> <br /> </div> </form> </body> </html>
<%@ Page Language="C#" %>
<html>
<head >
<title>Test Page</title>
</head>
<body>
<form id="form1" defaultfocus="TextBox1" >
<div>
<asp:TextBox ID="TextBox1" ></asp:TextBox>
<br />
<asp:Button ID="Button1" Text="Button" />
<br />
</div>
</form>
</body>
</html>
Siehe auch
Konzepte
Aktivierreihenfolge, Fokus und Zugriffstasten in ASP.NET-Webserver-Steuerelementen