最近「DataList」コントロールをUserControlに移動し、ASPXページで参照しました。 DataListには、最初にデータソースによって割り当てられたチェックされたプロパティのチェックボックスが含まれています。ASPチェックボックスの 'checked'プロパティは常にfalseを返します
<asp:DataList ID="dlspec" CssClass="specs" runat="server" GridLines="Vertical" OnItemDataBound="dlspec_ItemDataBound">
<FooterStyle BackColor="#CCCCCC" />
<AlternatingItemStyle CssClass="alt-grey" />
<SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<table>
<tr>
<td class="leftcol">
<asp:Label ID="lblDimension" runat="server" Text='<%# Eval("Dimension") %>'></asp:Label>:
</td>
<td class="ProductDetailData">
<asp:Label ID="lblName" runat="server" Text='<%# Eval("Attribute") %>'></asp:Label>
</td>
<td class="find-similar">
<asp:CheckBox ID="FindSimilarCheckbox" runat="server" Checked='<%# Eval("CheckBox")=="true"? true:false %>' Text='<%# Eval("AttributeID") %>' Visible='<%# Eval("CheckBoxState")=="0"? true:false %>' />
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
は今、ユーザーコントロールがバインドされているために、「ASPX」のボタンクリックイベントに、私はいくつかのロジックを通過するのチェックボックスの「確認」のプロパティを取得しよう。 私は基本的にusercontrolを見つけて、その中のコントロールをループします。
Control SpecsPanel = FindSimilarPnl.FindControl("Specifications").FindControl("dlspec");
foreach (Control ct in SpecsPanel.Controls)
GetCheckedAttributes(ct, ref qry);
私は、ユーザーコントロールにデータリストを移動した後、 『偽「のチェックボックスにチェック」プロパティが常にあることを出てくる』しかし
。任意のアイデアなぜですか?私は愚かな何かが足りないのですか?大幅に任意の考えのアイデアに感謝。。私はあなたがよりよく理解してより多くのコードを追加する必要がある場合、私に教えてください おかげ
私は簡単な方法でコントロールを見つける方法について何かを提案することができます..? – MethodMan
IsPostBackをテストせずに、ロードイベントで値をfalseに初期化していますか? –
@DJKRAZE私が持っているものよりも優れたものは大歓迎です。ありがとうございます – karry