Brushes and Pens

To draw a shape on the screen, WPF needs to know how you would like that shape to be colored in and how its outline should be drawn. WPF provides several Brush types supporting a variety of painting styles. The Pen class extends this to provide information about stroke thickness, dash patterns, and the like.

In this section, we will look at all of the available brush types and the Pen class. However, because all brushes and pens are ultimately about deciding what colors to use where and how they are combined, we must first look at how colors are represented.

Color

WPF uses the Color structure in the System.Windows.Media namespace to represent a color. If you have worked with Windows Forms, ASP.NET, or GDI+ in the past, note that this is not the same structure as those technologies use. They use the Color structure in the System.Drawing namespace. WPF introduces this new Color structure because it can work with floating-point color values, enabling much higher color precision and greater flexibility.

The Color structure uses four numbers or "channels" to represent a color. These channels are red, green, blue, and alpha. Red, green, and blue channels are the traditional way of representing color in computer graphics. (This is because color screens work by adding these three primary colors together.) A value of 0 indicates that the color component is not present at all; 0 on all three channels corresponds to black. The alpha channel represents the level of opacity—a

Get Programming WPF, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.