2012-09-14 5 views
1

이 코드를 사용했지만이 코드는 HtmlInputCheckBox를 찾을 수 없습니다.중계기에서 HtmlInputCheckbox 컨트롤을 찾으십니까?

+0

시도 Repeater의 디자이너 코드를 보여주십시오 ... –

+0

코드에 오타가 있습니다. 'contact is HtmlInputCheckBox' 대신'contact'가'RepeaterItem'이기 때문에'cBox is HtmlInputCheckBox'를 사용할 수 있습니다. 하지만 이미 그 유형으로 캐스팅했기 때문에 그것은 또한 중복 될 것입니다. 그래서 대신에'null'을 검사해야합니다. –

+0

"chkteklif"란 무엇입니까? 이드가 맞습니까? – dpp

답변

0

Page_Load에서 컨트롤을 덮어 쓰지 않도록하십시오. 당신은 그 게시물을 다시 확인해야합니다.

+0

확인했습니다. 확실해. 항상 cbox는 null이됩니다. – dangerous35

+0

다른 사람들이 말했듯이, 우리는 당신의 마크 업과 page_load와 같은 더 많은 정보를 필요로 할 것입니다. – ravi

1

Repeater의 aspx 마크 업을 표시해야합니다. 그러나 나는 당신이 runat="server"을 추가하는 것을 잊었다 고 가정합니다.

그 외에도 코드에 오타가 있습니다. contact is HtmlInputCheckBox 대신 contactRepeaterItem이므로 cBox is HtmlInputCheckBox을 사용하는 것이 좋습니다. 하지만 이미 그 유형으로 캐스팅했기 때문에 그것은 또한 중복 될 것입니다. 따라서 null을 확인해야합니다.

foreach (RepeaterItem contact in rptList.Items) 
{ 
    HtmlInputCheckBox cBox = contact.FindControl("chkteklif") as HtmlInputCheckBox; 
    if (cBox != null) 
    { 
     string a = cBox.Value; 
    } 
} 

당신의 html-checkbox 모습 방법 :

<input id="chkteklif" type="checkbox" runat="server" value="check me" /> 

또는 (귀하의 코멘트에서),이 시도 :

<input id="chkteklif" type="checkbox" onclick='<%# "rptlist_onchange(this," + Eval("userid") + ");" %>' value="ilan" /> 
+0

괜찮습니다. 하지만 모든 시간은 cbox가 null이됩니다 : s – dangerous35

+0

@Tim 죄송합니다, 나는 당신의 대답을 편집, 나는 오해라고 생각합니다. 답을 다시 읽어 주시겠습니까? 감사. – dpp

+0

'chkteklif'는 그 정확한 ID입니까? 'null' 체크에 중단 점이있는 디버거를 사용하여 null 또는 잘못된 유형인지 확인 했습니까? –

0

당신이 어떤 오류가 발생됩니다

HtmlInputCheckBox cbox = (HtmlInputCheckBox)sender; 
관련 문제