隐藏/取消隐藏标签,文本框取决于数据库结果在asp.net



我需要隐藏/取消隐藏标签和文本框取决于db的结果,我尝试了这样的东西,但它不起作用,条件应该像如果db字段是空的字段,那么与该字段相关联的标签应该隐藏(不可见),以下是我尝试的代码:

<asp:Label ID="lblBirth" Text="DOB:" runat="server" ViewStateMode="Disabled" CssClass="lbl" />
                            <asp:Label ID="DOB" runat="server" CssClass="lblResult" Visible='<%# Eval("Berth") == DBNull.Value %>'></asp:Label>

背后的代码:

 protected void showDetails(int makeID)
{// get all the details of the selected caravan and populate the empty fields
    DataTable dt = new DataTable();
    DataTableReader dtr = caravans.GetCaravanDetailsByMakeID(makeID);
    while (dtr.Read())
    {
        //spec
      string value = dtr["Price"].ToString();
      lblModel.Text = dtr["model"].ToString();
      birthResult.Text = dtr["Berth"].ToString(); }}

为了使你的aspx版本工作,你的控件应该被数据绑定到包含"泊位"属性的数据源。从后面的代码可以看出,您更喜欢使用c#来填充控件。在这种情况下,您只需执行以下操作:

DOB.Visible = dtr["Berth"] == DBNull.Value;

我认为使用数据绑定是更好的解决方案

最新更新