Angled Headers in the DataGrid

In my last post, I demonstrated how to rotate the text inside a DataGrid header. And I suggested that you might want to actually create angled headers that look something like this.   My friend Cheryl, from the Silverlight UE team, and I decided to try this out. To make this work you need to know…


Implicit Styles, Templates, Controls and FrameworkElements

Even though I’ve been working with WPF for over 3 years, I’m still learning some of its idiosyncrasies. A discussion came up recently about whether implicit styles are applied to elements in a template. It turns out that the answer is, it depends on whether the element inherits from Control. Consider the following example. This…


Chart Controls for WPF ship in the Toolkit

We posted previously about the development of the WPF chart controls.  With the release of the June WPF Toolkit you now have the controls at your fingertips.  You can make bar, pie, bubble, scatter and line graphs.   Check out this blog post for details! Here’s the code for the image above: Add a reference to…


The VisualStateManager and Triggers

  Silverlight introduced the Visual State Manager, which makes it easier for control template authors to specify the appearance of a control depending on its visual state.  The WPF Toolkit  ships a Visual State Manager, and the next version of WPF will include the VSM as well.   The introduction of the VisualStateManager has understandably led…


Using Themes with Custom Controls

Last month I explained how to use shared resources in a control library. This month I’ll create an example that uses different styles based on the current setting of the desktop theme.   You can define a different look and feel based on the desktop theme by adding a resource dictionary to the Themes folder. …

4

Popup your control

You want a custom control to behave like a Popup and appear over your application and other windows?  So you should inherit from Popup, right?  Not necessarily.   Another approach is to create your custom control, add a Popup to it, and use the popup service.  In fact, this is exactly what ContextMenu and ToolTip…

5

How do I programmatically interact with template-generated elements? Part I

You may have a scenario that requires you to find an element within a ControlTemplate. To do that, you use Template.FindName.   Say you have a simple ControlTemplate for a Button, like the following:       <Style TargetType=“{x:Type Button}“>       <Setter Property=“Template“>         <Setter.Value>           <ControlTemplate TargetType=“{x:Type Button}“>             <Grid Margin=“5“ Name=“grid“>               <Ellipse Stroke=“DarkBlue“…

12

Free DataGrid for WPF by Xceed

The DataGrid has to be the most requested and sought-after WPF control. Today Xceed Software has released version 1.0 of their WPF DataGrid. Check it out!

0

"Styling" the content of a ContentControl

People have occasionally asked about using a Style to set the content of a control.  For example, suppose you want all of your buttons in an application to have the same content.  You can do something like this (As usual, this doesn’t make sense for a real world scenario, but it gives a simple example…

0

Interactive 2D Controls on 3D Surfaces in WPF

One of the really cool features of WPF is its ability to place 2D content on 3D surfaces. For example,  you can place a button control on a sphere or arrange images on a cube.  However, with V1 of WPF, you couldn’t interact with this 2D content. You could put a button on a sphere, but you couldn’t click…

0