Skip to content
SeRgI1982 edited this page Aug 30, 2017 · 2 revisions

Default control styles and templates depends on selected Windows Theme (Aero, Classic etc.).
Themes are related with specified file names
(here you will find matching).

If you would like to analyse those files, Visual Studio have a copies of them in the location:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\DesignTools\SystemThemes\Wpf

TimesheetEntriesView

Column Buttons

Change the look&feel of column buttons (Edit, Delete) Using Visual Studio Blend, create a copy of Button Style. Remove all useless borders and rectangles and put an appropriate Path. Path should get Geometry value from Button.Tag property
(you can find awesome Bezier Curves here)

Visual States

Change the background of Button to the Red (after half a second) when mouse is over the button. The Background should come back to the default value when mouse is outside the button
(take a look on default visual states - Button States.

ControlTemplate Triggers

Change the scale of Path to 0.95 when button is pressed
(you will find here an info about WPF Triggers).

Style Triggers

Change Background of the Button to White when row is selected. You can extract this style trigger to the separate Style which is based on default style of the button.

DataGrid row

When mouse is over row, we would like to change the Background to:

  • Dark Orange - when bounded TimesheetEntry contains 'Apollo' string in WorkTitle property,
  • Green - in other cases.

To achieve this, create Style Selector which expose two properties:

  • ApolloStyle,
  • DefaultStyle

and assign them to appropriate rows when condition is met.

Clone this wiki locally