• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 160
  • Last Modified:

what wrong wih this code in Master Page

Hello Experts,
i am trying to declare a public string in a Master Page in asp.net 2.0 C#.
i am getting the following error
Cannot implicitly convert type 'bool' to 'System.Web.UI.WebControls.Panel'
can you please tell me where i am making the mistake. i am attaching the code below
Thanks i appreciate it.
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
 
public partial class SideBar : System.Web.UI.MasterPage
{
    protected void Page_Load(object sender, EventArgs e)
    {
 
    }
       //for panel
 
    public Panel SidebarPanel1
    {
        get
        {
            return Panel1.Visible;
        }
        set
        {
            Panel1.Visible = value;
        }
    }
}

Open in new window

0
niceoneishere
Asked:
niceoneishere
  • 5
  • 4
  • 2
1 Solution
 
tiagosalgadoCommented:
Your declaring your propertie and saying that the return value is going to by a Panel. Change it to
public bool SidebarPanel1
0
 
niceoneishereAuthor Commented:
Hello Sir,
ok now my error is gone. but when i try to access the SiderbarPanel1 on the page_load of a aspx page like below, how can i set it visible property to be false. this is what i have in my aspx page
Thanks once again
<%@ Page Language="C#" MasterPageFile="SideBar.master" AutoEventWireup="true" CodeFile="sidebar.aspx.cs" Inherits="Menu_sidebar" Title="Untitled Page" %>
<%@ MasterType VirtualPath="SideBar.master" %>
 
<script runat="server">
    protected void Page_Load(object sender, System.EventArgs e)
    {
 
          Master.SidebarLabel1 = "";
          Master.SidebarPanel1 // -----what should i do here to make visible = false
           }
 
 
</script>
 
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
</asp:Content>

Open in new window

0
 
tiagosalgadoCommented:
Panel p = Master.FindControl("SidebarPanel1") as Panel;
if (p != null)
{
m.Visible = false;
}
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
niceoneishereAuthor Commented:
Hello Sir,
i know how to use the FindControl to acces the control from master page. if you have seen my code in the master page i have something like this for a label1

//for label1
    public string SidebarLabel1
    {
        get
        {
            return Label1.Text;
         }
        set
        {
            Label1.Text = value;
        }
    }

and as you have seen in from my earlier post how  i am accessing SidebarLabel1 in the aspx page. i was hoping to do something along that line sir. is is possible to do that
Thanks once again
0
 
tiagosalgadoCommented:
So, your saying that setting the visible propertie to false, it don't hide the panel right?
If so, try yourpanel.Style.Add("display","none")
0
 
prairiedogCommented:
Will this do?
Master.SidebarPanel1 = false;
0
 
niceoneishereAuthor Commented:
Hello Prairiedog,

bravo !!! it works, one thing i have to ask is , can we this type of coding for other controls like labels, textbox, DDL's etc.
Thanks
0
 
prairiedogCommented:
Labels and textboxes should be ok. But I am not sure for DLL's.
0
 
niceoneishereAuthor Commented:
works like a charm Thanks
0
 
tiagosalgadoCommented:
For DDL's you can use Style.Add("display","none")
0
 
tiagosalgadoCommented:
Sorry last comment, ignore it.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 5
  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now