473,327 Members | 2,069 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,327 software developers and data experts.

Question about color

string fill = "Color.Salmon"
textBox1.BackColor = fill;

this doesn't work. What should I write after the = ?

(Please note that I am not wanting to write textBox1.
BackColor = Color.Salmon; I am wanting to fill some text boxes in a
loop and am reading the colors from a file.)

Many thanks.
--
Regards,
Patrick.
Nov 15 '05 #1
7 4054
Hi,

Take a look at Color.FromName. That should do what you want.

Hope this helps

Chris Taylor

"Patrick De Ridder" <00*@000.00> wrote in message
news:a9********************************@4ax.com...
string fill = "Color.Salmon"
textBox1.BackColor = fill;

this doesn't work. What should I write after the = ?

(Please note that I am not wanting to write textBox1.
BackColor = Color.Salmon; I am wanting to fill some text boxes in a
loop and am reading the colors from a file.)

Many thanks.
--
Regards,
Patrick.

Nov 15 '05 #2
string fillColor = "Salmon";

ColorConverter colorConverter = new ColorConverter();

textBox1.BackColor = (Color) colorConverter.ConvertFromString(fillColor);

Hope this helps

Rak

"Patrick De Ridder" <00*@000.00> wrote in message
news:a9********************************@4ax.com...
string fill = "Color.Salmon"
textBox1.BackColor = fill;

this doesn't work. What should I write after the = ?

(Please note that I am not wanting to write textBox1.
BackColor = Color.Salmon; I am wanting to fill some text boxes in a
loop and am reading the colors from a file.)

Many thanks.
--
Regards,
Patrick.

Nov 15 '05 #3
On Mon, 29 Sep 2003 12:47:04 +0530, "Rakesh"
<ra*****@asianetindia.com> wrote:
string fillColor = "Salmon";

ColorConverter colorConverter = new ColorConverter();

textBox1.BackColor = (Color) colorConverter.ConvertFromString(fillColor);

Hope this helps

Rak

That's great, thank you.
--
Regards,
Patrick.
Nov 15 '05 #4
On Mon, 29 Sep 2003 12:47:04 +0530, "Rakesh"
<ra*****@asianetindia.com> wrote:

string fillColor = "Salmon";

ColorConverter colorConverter = new ColorConverter();

textBox1.BackColor = (Color) colorConverter.ConvertFromString(fillColor);

*********************************************
The code below produced the error:
Aquamarine is not a valid value for Int32
Colors like Aquamarine are the ones I want to diaplay.
How should I change the code?
Many thanks.
Patrick
*********************************************
private void Colors_Load(object sender, System.EventArgs e)
{
using (StreamReader sr = new StreamReader(@"Colors.txt"))
for(int i = 0; i<Controls.Count; i++)
{
Control mine = Controls[i];
if (mine is TextBox)
{
string fillColor = sr.ReadLine();/////// error line /////////
ColorConverter colorConverter = new ColorConverter();
mine.BackColor = (Color)colorConverter.ConvertFromString(fillColor) ;
}
}
}
Nov 15 '05 #5
On Mon, 29 Sep 2003 12:47:04 +0530, "Rakesh"
<ra*****@asianetindia.com> wrote:
string fillColor = "Salmon";

ColorConverter colorConverter = new ColorConverter();

textBox1.BackColor = (Color) colorConverter.ConvertFromString(fillColor);

Hope this helps

Rak


Actually, most of the 141 colors listed in "Color Members" in MSDN are
converted alright. It seems that we are talking about some forty valid
color members that won't convert this way.
--
Regards,
Patrick.
Nov 15 '05 #6
Hi Patrick,

Chris suggested using the Color class:
Colour = Color.ColorFromName (sColour);

Rakesh suggested the longer:
ColorConverter colorConverter = new ColorConverter();
Colour = (Color) colorConverter.ConvertFromString (sColour);

=============
ColorFromName will take any string value. If it is valid it will set the
colour accordingly. If it is invalid, it will set the colour to Black. In both
cases it will set the name to whatever you give it (but if the name matches
characterwise (case insensitive), the standard name will be given).

These will produce the correct colour.
sColour Colour.ToString()
"Aquamarine" "Aquamarine" Perfect match
"aquaMarine" "Aquamarine" Conversion
"aquamarinE" "Aquamarine" Conversion

" Aquamarine " " Aquamarine " No change.
" aquaMarine " " aquaMarine " No change

This will produce Black.
sColour Colour.ToString()
"Zoltan" "Zoltan" Black by a different name.

Incorrect names will not produce an Exception.

=============
colorConverter.ConvertFromString (sColour) will only take an valid colour
name, although quotes and white space are allowed. The name will be converted
to the standard form. If the name is invalid an Exception will be thrown.

These will produce the correct colour.
sColour Colour.ToString()
"Aquamarine" "Aquamarine"
"aquaMarine" "Aquamarine" Conversion
"aquamarinE" "Aquamarine" Conversion
" Aquamarine " "Aquamarine" Conversion
" aquaMarine " "Aquamarine" Conversion

This will produce an Exception.
sColour
"Zoltan"

=============
My thinking is that there must be something wrong with the colour names in
your file, however, if you used cut-and-paste to show us the error with
Aquamarine, then something else is sadly amiss, for "Aquamarine" is a
perfectly valid name.

Regards,
Fergus

ps. You can move ColorConverter colorConverter = new ColorConverter(); out of
the loop - you don't need a fresh one for each conversion.
Nov 15 '05 #7
On Mon, 29 Sep 2003 19:40:45 +0100, "David Faircastle"
<fi****@post.com> wrote:

<snipped>

Thank you for your very generous reply. I need to sort things out now.
--
Regards,
Patrick.
Nov 15 '05 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Mohammed Mazid | last post by:
Can anyone please help me on how to move to the next and previous question? Here is a snippet of my code: Private Sub cmdNext_Click() End Sub Private Sub cmdPrevious_Click() showrecord
65
by: perseus | last post by:
I think that everyone who told me that my question is irrelevant, in particular Mr. David White, is being absolutely ridiculous. Obviously, most of you up here behave like the owners of the C++...
3
by: Stevey | last post by:
I have the following XML file... <?xml version="1.0"?> <animals> <animal> <name>Tiger</name> <questions> <question index="0">true</question> <question index="1">true</question> </questions>
7
by: nospam | last post by:
Ok, 3rd or is it the 4th time I have asked this question on Partial Types, so, since it seems to me that Partial Types is still in the design or development stages at Microsoft, I am going to ask...
11
by: Mark Yudkin | last post by:
The documentation is unclear (at least to me) on the permissibility of accessing DB2 (8.1.5) concurrently on and from Windows 2000 / XP / 2003, with separate transactions scope, from separate...
3
by: Ekqvist Marko | last post by:
Hi, I have one Access database table including questions and answers. Now I need to give answer id automatically to questionID column. But I don't know how it is best (fastest) to do? table...
11
by: NC Tim | last post by:
Hello, I think the question i have is fairly straightforward, but I can't seem to replicate the old SAS frequency procedure when I try to accomplish this in MS Access. anyway, i have about 10...
10
by: glenn | last post by:
I am use to programming in php and the way session and post vars are past from fields on one page through to the post page automatically where I can get to their values easily to write to a...
53
by: Jeff | last post by:
In the function below, can size ever be 0 (zero)? char *clc_strdup(const char * CLC_RESTRICT s) { size_t size; char *p; clc_assert_not_null(clc_strdup, s); size = strlen(s) + 1;
56
by: spibou | last post by:
In the statement "a *= expression" is expression assumed to be parenthesized ? For example if I write "a *= b+c" is this the same as "a = a * (b+c)" or "a = a * b+c" ?
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.