Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > Changing page bgcolor from code (repost)

Reply
Thread Tools

Changing page bgcolor from code (repost)

 
 
GaryDean
Guest
Posts: n/a
 
      03-11-2006
In the original post I failed so indicate that I am using framework
1.1.......

I need to be able to change the background color of a page from code. I
found an answer to this question in another forum from Peter Huang that said
that an id="bg" as follows...

<body MS_POSITIONING="GridLayout" runat="server" id="bg">

then we could do the following in our codebehind file....

Private Sub Page_Load(sender As Object, e As System.EventArgs)
bg.Attributes.Add("BgColor", "#ff9933")
End Sub

However, I get the errror that bg is Private.

Is there a solution to this issue where bgcolor, and other attributes of the
document can be changed from codebehind code?


--
Regards,
Gary Blakely


 
Reply With Quote
 
 
 
 
Juan T. Llibre
Guest
Posts: n/a
 
      03-11-2006
If that's all you want to do, why don't you simply do it,
by setting the <body background-color...> attribute ?

You aren't *really* attemptiong to change the background color
from code. You are just setting an arbitrary background color.

If that's all you want to do, why don't you just set it in the <body...>

Otherwise, use the code for the examples I posted.
Those samples allow users to select any background/foreground colors you want to allow.



Juan T. Llibre, asp.net MVP
aspnetfaq.com : http://www.aspnetfaq.com/
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en espaņol : http://asp.net.do/foros/
===================================
"GaryDean" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> In the original post I failed so indicate that I am using framework 1.1.......
>
> I need to be able to change the background color of a page from code. I
> found an answer to this question in another forum from Peter Huang that said
> that an id="bg" as follows...
>
> <body MS_POSITIONING="GridLayout" runat="server" id="bg">
>
> then we could do the following in our codebehind file....
>
> Private Sub Page_Load(sender As Object, e As System.EventArgs)
> bg.Attributes.Add("BgColor", "#ff9933")
> End Sub
>
> However, I get the errror that bg is Private.
>
> Is there a solution to this issue where bgcolor, and other attributes of the
> document can be changed from codebehind code?
>
>
> --
> Regards,
> Gary Blakely
>
>



 
Reply With Quote
 
 
 
 
GaryDean
Guest
Posts: n/a
 
      03-11-2006
Yes I REALLY want to set it at run time - please trust me on this. Not at
design time.

The reason why I don't simply set it in the body is because I want to set it
at run time.

your examples show it working but I can't see your code behind.

Maybe we are not communicating well. I want to find out how to set the
background color at run time from my code behind file.


--
Regards,
Gary Blakely
"Juan T. Llibre" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> If that's all you want to do, why don't you simply do it,
> by setting the <body background-color...> attribute ?
>
> You aren't *really* attemptiong to change the background color
> from code. You are just setting an arbitrary background color.
>
> If that's all you want to do, why don't you just set it in the <body...>
>
> Otherwise, use the code for the examples I posted.
> Those samples allow users to select any background/foreground colors you
> want to allow.
>
>
>
> Juan T. Llibre, asp.net MVP
> aspnetfaq.com : http://www.aspnetfaq.com/
> asp.net faq : http://asp.net.do/faq/
> foros de asp.net, en espaņol : http://asp.net.do/foros/
> ===================================
> "GaryDean" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> In the original post I failed so indicate that I am using framework
>> 1.1.......
>>
>> I need to be able to change the background color of a page from code. I
>> found an answer to this question in another forum from Peter Huang that
>> said
>> that an id="bg" as follows...
>>
>> <body MS_POSITIONING="GridLayout" runat="server" id="bg">
>>
>> then we could do the following in our codebehind file....
>>
>> Private Sub Page_Load(sender As Object, e As System.EventArgs)
>> bg.Attributes.Add("BgColor", "#ff9933")
>> End Sub
>>
>> However, I get the errror that bg is Private.
>>
>> Is there a solution to this issue where bgcolor, and other attributes of
>> the
>> document can be changed from codebehind code?
>>
>>
>> --
>> Regards,
>> Gary Blakely
>>
>>

>
>



 
Reply With Quote
 
Juan T. Llibre
Guest
Posts: n/a
 
      03-12-2006
re:
> your examples show it working but I can't see your code behind.


The code for with sessions is at :
http://samples.gotdotnet.com/quickst...ze.aspx&font=3

and, for doing it with cookies, the code is at :
http://samples.gotdotnet.com/quickst...1/cookies1.src




Juan T. Llibre, asp.net MVP
aspnetfaq.com : http://www.aspnetfaq.com/
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en espaņol : http://asp.net.do/foros/
===================================
"GaryDean" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
> Yes I REALLY want to set it at run time - please trust me on this. Not at design time.
>
> The reason why I don't simply set it in the body is because I want to set it at run time.
>
> your examples show it working but I can't see your code behind.
>
> Maybe we are not communicating well. I want to find out how to set the background color at run
> time from my code behind file.
>
>
> --
> Regards,
> Gary Blakely
> "Juan T. Llibre" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> If that's all you want to do, why don't you simply do it,
>> by setting the <body background-color...> attribute ?
>>
>> You aren't *really* attemptiong to change the background color
>> from code. You are just setting an arbitrary background color.
>>
>> If that's all you want to do, why don't you just set it in the <body...>
>>
>> Otherwise, use the code for the examples I posted.
>> Those samples allow users to select any background/foreground colors you want to allow.
>>
>>
>>
>> Juan T. Llibre, asp.net MVP
>> aspnetfaq.com : http://www.aspnetfaq.com/
>> asp.net faq : http://asp.net.do/faq/
>> foros de asp.net, en espaņol : http://asp.net.do/foros/
>> ===================================
>> "GaryDean" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>>> In the original post I failed so indicate that I am using framework 1.1.......
>>>
>>> I need to be able to change the background color of a page from code. I
>>> found an answer to this question in another forum from Peter Huang that said
>>> that an id="bg" as follows...
>>>
>>> <body MS_POSITIONING="GridLayout" runat="server" id="bg">
>>>
>>> then we could do the following in our codebehind file....
>>>
>>> Private Sub Page_Load(sender As Object, e As System.EventArgs)
>>> bg.Attributes.Add("BgColor", "#ff9933")
>>> End Sub
>>>
>>> However, I get the errror that bg is Private.
>>>
>>> Is there a solution to this issue where bgcolor, and other attributes of the
>>> document can be changed from codebehind code?
>>>
>>>
>>> --
>>> Regards,
>>> Gary Blakely



 
Reply With Quote
 
GaryDean
Guest
Posts: n/a
 
      03-12-2006
I see your solution working and I saw the tutorial on this at gotdotnet.
but this does not appear to be compatible with forms as they are used in
vs.net. for instance...

<body MS_POSITIONING="GridLayout" style="color:<%=GetStyle("ForeColor")%>"
>

<form id="Form1" method="post" runat="server">

</form>

The GetStyle call as above and as in your code is not tollerated in vs.net.
I am unable to even return to the design view with that code as is.

As I said before, I (simply) want to find out how to set the background
color at run time from my code behind file. It seems there has to be a way
to reference the bgcolor in the Document from my codebehind.

--
Regards,
Gary Blakely
"Juan T. Llibre" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> re:
>> your examples show it working but I can't see your code behind.

>
> The code for with sessions is at :
> http://samples.gotdotnet.com/quickst...ze.aspx&font=3
>
> and, for doing it with cookies, the code is at :
> http://samples.gotdotnet.com/quickst...1/cookies1.src
>
>
>
>
> Juan T. Llibre, asp.net MVP
> aspnetfaq.com : http://www.aspnetfaq.com/
> asp.net faq : http://asp.net.do/faq/
> foros de asp.net, en espaņol : http://asp.net.do/foros/
> ===================================
> "GaryDean" <(E-Mail Removed)> wrote in message
> news:%(E-Mail Removed)...
>> Yes I REALLY want to set it at run time - please trust me on this. Not
>> at design time.
>>
>> The reason why I don't simply set it in the body is because I want to set
>> it at run time.
>>
>> your examples show it working but I can't see your code behind.
>>
>> Maybe we are not communicating well. I want to find out how to set the
>> background color at run time from my code behind file.
>>
>>
>> --
>> Regards,
>> Gary Blakely
>> "Juan T. Llibre" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>>> If that's all you want to do, why don't you simply do it,
>>> by setting the <body background-color...> attribute ?
>>>
>>> You aren't *really* attemptiong to change the background color
>>> from code. You are just setting an arbitrary background color.
>>>
>>> If that's all you want to do, why don't you just set it in the <body...>
>>>
>>> Otherwise, use the code for the examples I posted.
>>> Those samples allow users to select any background/foreground colors you
>>> want to allow.
>>>
>>>
>>>
>>> Juan T. Llibre, asp.net MVP
>>> aspnetfaq.com : http://www.aspnetfaq.com/
>>> asp.net faq : http://asp.net.do/faq/
>>> foros de asp.net, en espaņol : http://asp.net.do/foros/
>>> ===================================
>>> "GaryDean" <(E-Mail Removed)> wrote in message
>>> news:(E-Mail Removed)...
>>>> In the original post I failed so indicate that I am using framework
>>>> 1.1.......
>>>>
>>>> I need to be able to change the background color of a page from code.
>>>> I
>>>> found an answer to this question in another forum from Peter Huang that
>>>> said
>>>> that an id="bg" as follows...
>>>>
>>>> <body MS_POSITIONING="GridLayout" runat="server" id="bg">
>>>>
>>>> then we could do the following in our codebehind file....
>>>>
>>>> Private Sub Page_Load(sender As Object, e As System.EventArgs)
>>>> bg.Attributes.Add("BgColor", "#ff9933")
>>>> End Sub
>>>>
>>>> However, I get the errror that bg is Private.
>>>>
>>>> Is there a solution to this issue where bgcolor, and other attributes
>>>> of the
>>>> document can be changed from codebehind code?
>>>>
>>>>
>>>> --
>>>> Regards,
>>>> Gary Blakely

>
>



 
Reply With Quote
 
Juan T. Llibre
Guest
Posts: n/a
 
      03-12-2006
I think you're complicating your life needlessly.

If you don't like that method, use this :

<%@ Page Language="C#" AutoEventWireup="True" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>
Changing a Page's Background Color
</title>
<script runat="server">
void SubmitBtn_Click(object Source, EventArgs e)
{
Body1.Attributes["bgcolor"] = ColorSelect.Value;
}
</script>
</head>
<body id="Body1" runat="server">
<h3>Changing a Page's Background Color</h3>
<form id="Form1" runat="server">
<p></p>
Select a background color for the page: <p></p>
<select id="ColorSelect" runat="server">
<option>White</option>
<option>Wheat</option>
<option>Gainsboro</option>
<option>LemonChiffon</option>
</select>
<input id="Submit1" type="submit" runat="server" value="Apply" onserverclick="SubmitBtn_Click"/>
</form>
</body>
</html>

---000---

You should be able to insert that code into code-behind,
almost as it is. I wrote it inline, because I prefer inline coding.

Notice that all I'm doing is adding an id attribute (body1) to the body,
and then changing the bgcolor of that HtmlGenericControl.

All you'd need to do is submit the form programmatically,
with whatever value you are going to give to "Body1.Attributes["bgcolor"]

You can see the above code working at :

http://asp.net.do/WebSite2/CustomizeDemo.aspx



Juan T. Llibre, asp.net MVP
aspnetfaq.com : http://www.aspnetfaq.com/
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en espaņol : http://asp.net.do/foros/
===================================
"GaryDean" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
>I see your solution working and I saw the tutorial on this at gotdotnet. but this does not appear
>to be compatible with forms as they are used in vs.net. for instance...
>
> <body MS_POSITIONING="GridLayout" style="color:<%=GetStyle("ForeColor")%>"
> >

> <form id="Form1" method="post" runat="server">
>
> </form>
>
> The GetStyle call as above and as in your code is not tollerated in vs.net. I am unable to even
> return to the design view with that code as is.
>
> As I said before, I (simply) want to find out how to set the background color at run time from my
> code behind file. It seems there has to be a way to reference the bgcolor in the Document from my
> codebehind.
>
> --
> Regards,
> Gary Blakely
> "Juan T. Llibre" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> re:
>>> your examples show it working but I can't see your code behind.

>>
>> The code for with sessions is at :
>> http://samples.gotdotnet.com/quickst...ze.aspx&font=3
>>
>> and, for doing it with cookies, the code is at :
>> http://samples.gotdotnet.com/quickst...1/cookies1.src
>>
>>
>>
>>
>> Juan T. Llibre, asp.net MVP
>> aspnetfaq.com : http://www.aspnetfaq.com/
>> asp.net faq : http://asp.net.do/faq/
>> foros de asp.net, en espaņol : http://asp.net.do/foros/
>> ===================================
>> "GaryDean" <(E-Mail Removed)> wrote in message
>> news:%(E-Mail Removed)...
>>> Yes I REALLY want to set it at run time - please trust me on this. Not at design time.
>>>
>>> The reason why I don't simply set it in the body is because I want to set it at run time.
>>>
>>> your examples show it working but I can't see your code behind.
>>>
>>> Maybe we are not communicating well. I want to find out how to set the background color at run
>>> time from my code behind file.
>>>
>>>
>>> --
>>> Regards,
>>> Gary Blakely
>>> "Juan T. Llibre" <(E-Mail Removed)> wrote in message
>>> news:(E-Mail Removed)...
>>>> If that's all you want to do, why don't you simply do it,
>>>> by setting the <body background-color...> attribute ?
>>>>
>>>> You aren't *really* attemptiong to change the background color
>>>> from code. You are just setting an arbitrary background color.
>>>>
>>>> If that's all you want to do, why don't you just set it in the <body...>
>>>>
>>>> Otherwise, use the code for the examples I posted.
>>>> Those samples allow users to select any background/foreground colors you want to allow.
>>>>
>>>>
>>>>
>>>> Juan T. Llibre, asp.net MVP
>>>> aspnetfaq.com : http://www.aspnetfaq.com/
>>>> asp.net faq : http://asp.net.do/faq/
>>>> foros de asp.net, en espaņol : http://asp.net.do/foros/
>>>> ===================================
>>>> "GaryDean" <(E-Mail Removed)> wrote in message
>>>> news:(E-Mail Removed)...
>>>>> In the original post I failed so indicate that I am using framework 1.1.......
>>>>>
>>>>> I need to be able to change the background color of a page from code. I
>>>>> found an answer to this question in another forum from Peter Huang that said
>>>>> that an id="bg" as follows...
>>>>>
>>>>> <body MS_POSITIONING="GridLayout" runat="server" id="bg">
>>>>>
>>>>> then we could do the following in our codebehind file....
>>>>>
>>>>> Private Sub Page_Load(sender As Object, e As System.EventArgs)
>>>>> bg.Attributes.Add("BgColor", "#ff9933")
>>>>> End Sub
>>>>>
>>>>> However, I get the errror that bg is Private.
>>>>>
>>>>> Is there a solution to this issue where bgcolor, and other attributes of the
>>>>> document can be changed from codebehind code?
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Gary Blakely

>>
>>

>
>




 
Reply With Quote
 
Steven Cheng[MSFT]
Guest
Posts: n/a
 
      03-13-2006
Hi Gary,

I think Juan's suggestion is good. Also, if you do need to programmatically
set the bgcolor for page body in codebehind, we need to mark the body as
"runat=server" and assign an ID, also in codebehind, we need to explicitly
declare a protected control member fields to associate that tag. For
example:

<body id="bd" runat="server" >
===================

public class BgColorPage : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox txtColor;
protected System.Web.UI.WebControls.Button btnSubmit;
protected HtmlGenericControl bd;
===========================

private void btnSubmit_Click(object sender, System.EventArgs e)
{
System.Drawing.Color bgcolor =
System.Drawing.ColorTranslator.FromHtml(txtColor.T ext);

bd.Style["BACKGROUND-COLOR"] =
System.Drawing.ColorTranslator.ToHtml(bgcolor);
}
======================

Hope this helps.

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

 
Reply With Quote
 
GaryDean
Guest
Posts: n/a
 
      03-17-2006
Steven,
that was the answer! It was the declaration of bd as an htmlgeneric control
that was missing.
thanks for your help

--
Regards,
Gary Blakely
"Steven Cheng[MSFT]" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Hi Gary,
>
> I think Juan's suggestion is good. Also, if you do need to
> programmatically
> set the bgcolor for page body in codebehind, we need to mark the body as
> "runat=server" and assign an ID, also in codebehind, we need to explicitly
> declare a protected control member fields to associate that tag. For
> example:
>
> <body id="bd" runat="server" >
> ===================
>
> public class BgColorPage : System.Web.UI.Page
> {
> protected System.Web.UI.WebControls.TextBox txtColor;
> protected System.Web.UI.WebControls.Button btnSubmit;
> protected HtmlGenericControl bd;
> ===========================
>
> private void btnSubmit_Click(object sender, System.EventArgs e)
> {
> System.Drawing.Color bgcolor =
> System.Drawing.ColorTranslator.FromHtml(txtColor.T ext);
>
> bd.Style["BACKGROUND-COLOR"] =
> System.Drawing.ColorTranslator.ToHtml(bgcolor);
> }
> ======================
>
> Hope this helps.
>
> Regards,
>
> Steven Cheng
> Microsoft Online Support
>
> Get Secure! www.microsoft.com/security
> (This posting is provided "AS IS", with no warranties, and confers no
> rights.)
>



 
Reply With Quote
 
Steven Cheng[MSFT]
Guest
Posts: n/a
 
      03-20-2006
You're welcome Gary,

Good luck!

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

 
Reply With Quote
 
GaryDean
Guest
Posts: n/a
 
      03-27-2006
Steven,
I have an interesting complication related to putting a runat="server"
inside my body tag.

On one of my pages I was calling a Javascript function i.e. <body
onload="setcursor".... where I am calling a javascript function. But since
the body is now a server control the page gets an error saying setcursor is
not a part of webform1.aspx.

Do you know of way to call the javascript function now that it has the
runat server?

--
Regards,
Gary Blakely
"Steven Cheng[MSFT]" <(E-Mail Removed)> wrote in message
news:F%(E-Mail Removed)...
> You're welcome Gary,
>
> Good luck!
>
> Regards,
>
> Steven Cheng
> Microsoft Online Support
>
> Get Secure! www.microsoft.com/security
> (This posting is provided "AS IS", with no warranties, and confers no
> rights.)
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
CSS Help on making Div BGcolor across entire page when scroll bar appears davidr@sharpesoft.com ASP .Net 1 08-04-2006 07:58 PM
Changing Page bgColor from code GaryDean ASP .Net 6 03-13-2006 03:53 AM
Changing DataGrid Item BGCOLOR JC ASP .Net Web Controls 1 03-06-2004 02:31 AM
Changing DataGrid Item BGCOLOR =?Utf-8?B?SkM=?= ASP .Net 1 03-06-2004 02:26 AM
Change BgColor of aspx page in code Cliff Cavin ASP .Net 7 01-19-2004 06:26 PM



Advertisments