我有一个中继器,其中隐藏了一组列,直到单击按钮以显示它们。这工作正常,直到您再次单击该按钮导致再次隐藏列。
我基本上希望它只工作一次(不过我可能会清除/重置)。我在 foreach 循环中尝试了 if 语句等,但没有成功。
这是代码:
<asp:Repeater ID="rptQuote" OnItemCommand="rptQuote_ItemCommand" runat="server">
<ItemTemplate>
<p>
<span><%#Eval("Qty") %> x </span>
<span class="bolist120"><%#Eval("product") %> bin</span>
<asp:Label ID="lblBinPrices" Visible="false">@ <%# string.Format("{0:c}",Eval("Value")) %> = <%# string.Format("{0:c}",Eval("Total")) %></asp:Label>
</p>
</ItemTemplate>
</asp:Repeater>
<asp:Button ID="btnCalculate" runat="server" OnClick="BtnCalc" />
这是点击代码:
protected void BtnCalc(object sender, EventArgs e)
{
foreach (RepeaterItem item in rptQuote.Items)
{
var label = (Label)item.FindControl("lblBinPrices");
label.Visible = true;
}
}
我想知道我是否丢失了label.Visible = true; 在下一次单击时,但肯定 onclick 操作应该再次将其设置回来。
对我做错了什么有任何想法吗?
干杯,麻木