1
protected void Button1_Click1(object sender, EventArgs e)
{
    foreach (RepeaterItem contact in rptList.Items)
    {
        HtmlInputCheckBox cBox = contact.FindControl("chkteklif") as HtmlInputCheckBox;
        if (contact is HtmlInputCheckBox)
        {
            string a = cBox.Value;
        }
    }

}

私はこのコードを使用しましたが、このコードはHtmlInputCheckBoxを見つけることができませんでした..何か考えはありますか?

4

3 に答える 3

1

の aspx マークアップを見せてくださいRepeater。しかし、追加するのを忘れたと思いますrunat="server"

それとは別に、コードにタイプミスがあります。の代わりにを使用することをお勧めしcontact is HtmlInputCheckBoxます。ただし、すでにその型にキャストしているため、これも冗長です。したがって、代わりにチェックする必要があります。cBox is HtmlInputCheckBoxcontactRepeaterItemnull

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" /> 
于 2012-09-14T06:17:40.313 に答える
0

試す

HtmlInputCheckBox cbox = (HtmlInputCheckBox)sender;
于 2012-09-14T06:28:38.227 に答える
0

Page_Load でコントロールを上書きしていないことを確認してください。ポストバックかどうかを確認する必要があります。

于 2012-09-14T06:13:42.193 に答える