开发者

Hide / unhide Label, textbox depending on the db results in asp.net

I need to hide /unhide the labels and textbox depending on db results , I tried something like this but it doesnt works, the condition should be like if the db field is empty for that field , then the label associated with that field should hidden (not visible) , following is the code i tried :

<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>

Code behind:

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


To make your aspx version work your control should be data bound to data source that contains "Berth" property. As I can see from code behind, you prefer to use c# to populate controls. In this case you may just do the following:

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

I think that using data binding is more preferable solution.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜