Wednesday, June 3, 2009

How to convert a Brush to Color in C#

Or How to get the Color of a Brush object in .NET

The solution is pretty simple:
  
 new Pen(brush).Color

The reverse is also possible

 new SolidBrush(color)

7 comments:

aweaka said...

Thank You! You help me...

nikgibbs said...

Pretty simple...

...and pretty ugly an' all :-) Shame on Microsoft for not exposing the brush's properties as nicely as the Pen.

Still, >you< got me out of a big hole -- thanks!

(Makes me wonder about gradient brushes for a single colour though; Might have to see what the pen does with that...)

NeoDimension said...

Thanks for posting this! On a bad day something as simple as this could hold you down...

LK said...

...like it did to me today! Thank you very much!

dickdinh said...

awesome thanks. This saved me today, but in my case I have to do something like since it's Silverlight:

SolidColorBrush S = txtColorWord1.Foreground as SolidColorBrush;

txtBlock.Text = S.Color.ToString();

RobBranaghan said...

Thanks for that, was getting my hair off with the Brush!

Anonymous said...

Thanks for that simple solution! It's a bit silly that it isn't possible to get it directly.