Control.FindControl Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Searches the current naming container for the specified server control.
Overloads
FindControl(String) |
Searches the current naming container for a server control with the specified |
FindControl(String, Int32) |
Searches the current naming container for a server control with the specified |
FindControl(String)
Searches the current naming container for a server control with the specified id
parameter.
public:
virtual System::Web::UI::Control ^ FindControl(System::String ^ id);
public virtual System.Web.UI.Control FindControl (string id);
abstract member FindControl : string -> System.Web.UI.Control
override this.FindControl : string -> System.Web.UI.Control
Public Overridable Function FindControl (id As String) As Control
Parameters
- id
- String
The identifier for the control to be found.
Returns
The specified control, or null
if the specified control does not exist.
Examples
The following example defines a Button1_Click
event handler. When invoked, this handler uses the FindControl method to locate a control with an ID property of TextBox2
on the containing page. If the control is found, its parent is determined using the Parent property and the parent control's ID is written to the page. If TextBox2
is not found, "Control Not Found" is written to the page.
Important
This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.
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");
}
}
Private Sub Button1_Click(sender As Object, MyEventArgs As EventArgs)
' Find control on page.
Dim myControl1 As Control = FindControl("TextBox2")
If (Not myControl1 Is Nothing)
' Get control's parent.
Dim myControl2 As Control = myControl1.Parent
Response.Write("Parent of the text box is : " & myControl2.ID)
Else
Response.Write("Control not found.....")
End If
End Sub
Remarks
Use FindControl to access a control from a function in a code-behind page, to access a control that is inside another container, or in other circumstances where the target control is not directly accessible to the caller. This method will find a control only if the control is directly contained by the specified container; that is, the method does not search throughout a hierarchy of controls within controls. For information about how to find a control when you do not know its immediate container, see How to: Access Server Controls by ID.
See also
Applies to
FindControl(String, Int32)
Searches the current naming container for a server control with the specified id
and an integer, specified in the pathOffset
parameter, which aids in the search. You should not override this version of the FindControl method.
protected:
virtual System::Web::UI::Control ^ FindControl(System::String ^ id, int pathOffset);
protected virtual System.Web.UI.Control FindControl (string id, int pathOffset);
abstract member FindControl : string * int -> System.Web.UI.Control
override this.FindControl : string * int -> System.Web.UI.Control
Protected Overridable Function FindControl (id As String, pathOffset As Integer) As Control
Parameters
- id
- String
The identifier for the control to be found.
- pathOffset
- Int32
The number of controls up the page control hierarchy needed to reach a naming container.
Returns
The specified control, or null
if the specified control does not exist.