2009-09-21 4 views
1

여러 LinkButton을 동적으로 생성하는 코드를 만들었습니다. 나는 각각의 링크 버튼의 OnClick도를 가리키고있어 :컨트롤 현재 클릭

void LinkButton_Click(object sender, EventArgs e) 
    { 
    Response.Write("You clicked the link button"); 
    } 

이 잘 실행,하지만 지금은 LinkButtons 중 하나는 나는 그것의 ID를 얻을 수 및 다른 기능이를 보낼 클릭입니다 I 때.

도움을 주시면 감사하겠습니다.

매트

답변

3

당신은 같이 컨트롤의 특정 유형에 sender 캐스팅해야합니다

void LinkButton_Click(Object sender, EventArgs e) 
{ 
    LinkButton button = sender as LinkButton; 

    if(button != null) 
    { 
    //do something 
    } 

    Response.Write("You clicked the link button"; 
} 

as 운영자가 LinkButton를 입력 sender 캐스팅을 시도합니다. 성공하지 못하면 로컬 변수 buttonnull으로 설정됩니다. 이것은 변형 캐스팅이 적절하지 않은 경우 예외를 throw하는 (LinkButton)sender과 다른 동작입니다.

+0

fantastic, thanks mate. 이전에 (LinkButton) 발신자와 함께 놀았습니다! – bExplosion

+1

bExplosion : 좋은 거래. 토론에 추가하기 만하면 발신자를 WebControl에 전송할 수도 있습니다. 이는 단일 이벤트 유형 이상의 서버 컨트롤에서이 이벤트를 발생시키려는 경우에 유용합니다. 이 작업을 수행하려면 모든 컨트롤을 WebControl에서 확장해야합니다 (어쨌든 대부분 수행). –

관련 문제