"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > FindControl을 사용하여 GridView의 TemplateField 내에서 컨트롤을 어떻게 찾을 수 있나요?

FindControl을 사용하여 GridView의 TemplateField 내에서 컨트롤을 어떻게 찾을 수 있나요?

2025년 1월 17일에 게시됨
검색:329

How Can I Find a Control Within a GridView's TemplateField Using FindControl?

페이지 클래스의 FindControl 메서드는 페이지 계층 구조의 위치에 관계없이 웹 양식 내부의 모든 컨트롤을 찾는 데 사용할 수 있습니다. 여기에는 GridView의 TemplateField 내의 컨트롤과 같이 다른 컨트롤 내에 중첩된 컨트롤이 포함됩니다.

GridView의 TemplateField 내에서 컨트롤을 찾으려면 다음 단계를 사용할 수 있습니다.

  1. 가져오기 GridView 개체에 대한 참조입니다.
  2. GridView의 행을 반복합니다.
  3. 각 행에 대해 FindControl 메서드를 사용하여 TemplateField 내의 컨트롤을 찾습니다.

코드에서 GridView의 TemplateField의 ItemTemplate 내에서 ID가 "hlPlus"인 HyperLink 컨트롤을 찾으려고 합니다. 이렇게 하려면 다음 코드를 사용할 수 있습니다.

foreach (GridViewRow row in grvYourOpportunities.Rows)
{
    if (row.RowType == DataControlRowType.DataRow)
    {
        // Get a reference to the HyperLink control.
        HyperLink hlPlus = (HyperLink)row.FindControl("hlPlus");

        // Check if the HyperLink control was found.
        if (hlPlus != null)
        {
            // Do something with the HyperLink control.
        }
    }
}

이 코드는 GridView의 행을 반복하고 TemplateField의 ItemTemplate 내에서 ID가 "hlPlus"인 HyperLink 컨트롤을 찾습니다. 컨트롤이 발견되면 hlPlus 변수에 할당됩니다. 그런 다음 hlPlus 변수를 사용하여 컨트롤에 필요한 모든 작업을 수행할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3