2011-08-01 95 views
0

分贝结果我需要隐藏/显示根据分贝结果标签和文本框的文本框,我想是这样的,但它不工作时,情况应该是这样,如果数据库字段为空,该字段,则与该领域相关的标签应该隐藏(不可见),下面是我试过的代码:隐藏/取消隐藏标签,这取决于在asp.net

<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(); }} 

回答

1

为了让您的aspx版本工作你的控制应该是数据绑定到包含“泊位”的数据源RTY。正如我从后面的代码中看到的,您更喜欢使用c#来填充控件。在这种情况下,你可能只是做到以下几点:

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

我认为,使用数据绑定更可取的解决方案。

+0

我想隐藏也显示DOB的标签:,我怎样才能隐藏,取决于结果 –

+0

'lblBirth.Visible = dtr [“泊位”]!= DBNull.Value; –