Auf Englisch lesen

Freigeben über


Control.FindControl Methode

Definition

Durchsucht den aktuellen Benennungscontainer nach dem angegebenen Serversteuerelement.

Überlädt

FindControl(String)

Durchsucht den aktuellen Benennungscontainer nach dem angegebenen Serversteuerelement mit dem angegebenen id-Parameter.

FindControl(String, Int32)

Durchsucht den aktuellen Benennungscontainer nach einem Serversteuerelement mit der angegebenen id und einer ganzen Zahl, die im pathOffset-Parameter angegeben ist, der die Suche unterstützt. Sie sollten diese Version der FindControl-Methode nicht überschreiben.

FindControl(String)

Durchsucht den aktuellen Benennungscontainer nach dem angegebenen Serversteuerelement mit dem angegebenen id-Parameter.

C#
public virtual System.Web.UI.Control FindControl (string id);

Parameter

id
String

Der Bezeichner für das zu suchende Steuerelement.

Gibt zurück

Das angegebene Steuerelement oder null, wenn das angegebene Steuerelement nicht vorhanden ist.

Beispiele

Im folgenden Beispiel wird ein Button1_Click Ereignishandler definiert. Beim Aufruf verwendet dieser Handler die FindControl -Methode, um ein Steuerelement mit einer ID -Eigenschaft von TextBox2 auf der enthaltenden Seite zu suchen. Wenn das Steuerelement gefunden wird, wird sein übergeordnetes Element mithilfe der Parent -Eigenschaft bestimmt, und das des übergeordneten Steuerelements ID wird auf die Seite geschrieben. Wenn TextBox2 nicht gefunden wird, wird "Steuerelement nicht gefunden" auf die Seite geschrieben.

Wichtig

Dieses Beispiel umfasst ein Textfeld, das Benutzereingaben akzeptiert, die ein potenzielles Sicherheitsrisiko darstellen. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.

C#
private void Button1_Click(object sender, EventArgs MyEventArgs)
{
      // Find control on page.
      Control myControl1 = FindControl("TextBox2");
      if(myControl1!=null)
      {
         // Get control's parent.
         Control myControl2 = myControl1.Parent;
         Response.Write("Parent of the text box is : " + myControl2.ID);
      }
      else
      {
         Response.Write("Control not found");
      }
}

Hinweise

Verwenden Sie FindControl , um von einer Funktion auf einer CodeBehind-Seite aus auf ein Steuerelement zuzugreifen, das sich in einem anderen Container befindet, oder in anderen Fällen, in denen der Aufrufer nicht direkt auf das Zielsteuerelement zugreifen kann. Diese Methode findet nur dann ein Steuerelement, wenn das Steuerelement direkt im angegebenen Container enthalten ist. Das heißt, die -Methode sucht nicht in einer Hierarchie von Steuerelementen innerhalb von Steuerelementen. Informationen zum Suchen eines Steuerelements, wenn Sie den unmittelbaren Container nicht kennen, finden Sie unter Vorgehensweise: Zugreifen auf Serversteuerelemente nach ID.

Weitere Informationen

Gilt für:

.NET Framework 4.8.1 und andere Versionen
Produkt Versionen
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

FindControl(String, Int32)

Durchsucht den aktuellen Benennungscontainer nach einem Serversteuerelement mit der angegebenen id und einer ganzen Zahl, die im pathOffset-Parameter angegeben ist, der die Suche unterstützt. Sie sollten diese Version der FindControl-Methode nicht überschreiben.

C#
protected virtual System.Web.UI.Control FindControl (string id, int pathOffset);

Parameter

id
String

Der Bezeichner für das zu suchende Steuerelement.

pathOffset
Int32

Die Anzahl von Steuerelementen bis zu einem Benennungscontainer (aufsteigend in der Seitensteuerelementhierarchie).

Gibt zurück

Das angegebene Steuerelement oder null, wenn das angegebene Steuerelement nicht vorhanden ist.

Gilt für:

.NET Framework 4.8.1 und andere Versionen
Produkt Versionen
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1