【发布时间】:2011-07-28 17:35:43
【问题描述】:
我在 checkout.aspx 页面中有一个 div。 div的内容如下:
<div id="PaymentDetails" runat="server" style="text-align:center" visible="true">
<asp:Label ID="PaymentDetailsLbl" Text="Payment Details:" runat="server" Font-Size="Large"></asp:Label>
<br />
<br />
<br />
<asp:Label ID="UNameLbl" Text="User Name:" runat="server"></asp:Label>
<asp:Label ID="UNameTextLabel" runat="server" Width="150px"></asp:Label>
<br />
<br />
<asp:Label ID="AmountLbl" Text="Amount:" runat="server"></asp:Label>
<asp:Label ID="AmountTextLabel" runat="server" Width="50px"></asp:Label>
<br />
<br />
<asp:Label ID="CCNumberLbl" Text="Credit Card No:" runat="server"></asp:Label>
<asp:TextBox ID="CCNumberTBox" runat="server"></asp:TextBox>
<br />
<br />
<br />
<asp:Button ID="SubmitBtn" runat="server" Text="Submit" OnClick="SubmitBtn_Click" />
<asp:Button ID="ResetBtn" runat="server" OnClick="ResetBtn_Click" Text="Reset" />
<br />
<br />
<asp:Label runat="server" ID="SuccessMessageLabel" ForeColor="Red"></asp:Label>
<asp:Button ID="SoftwareDownloadsBtn" runat="server" Text="Software Downloads" Visible="false"
OnClick="SoftwareDownloadsBtn_Click" />
<br />
<br />
<asp:RegularExpressionValidator ID="CCNumberValidator" ErrorMessage="Credit Card Number: Min 10 and max 16 digits, starts with 3 or 4"
ControlToValidate="CCNumberTBox" runat="server"></asp:RegularExpressionValidator>
</div>
当用户未选择任何商品或用户已使用此代码从购物车中删除所有商品时,我尝试将 div 的可见性设置为 false:
else if ((Session["SelectedRowItems"] == null) || (shoppingCartItems.Count == 0))
{
this.Page.FindControl("PaymentDetails").Visible = false;
GridView1.EmptyDataText = "No Items Checked Out";
GridView1.EmptyDataRowStyle.CssClass = "EmptyGridViewContent";
}
但我收到以下错误:
对象引用未设置为对象的实例。
错误的详细截图是here
顺便说一句,我正在使用 VS 2008、asp.net/C# 及其 Web 应用程序项目
请帮助我。
感谢期待
【问题讨论】:
标签: asp.net html visibility