Browse by Tags
All Tags »
Concepts (RSS)
This post is about the “logical tree” in WPF, and how it differs from the visual tree. For the most part you don’t need to understand this. But if you want to understand some of the nit-like details of property inheritance, {DynamicResource} references,
Read More...
Like a lot of people, I’ve developed software professionally for a lot of different environments: PC systems and embedded systems; high- and low-level languages; kernel mode, user mode, real mode, and protected mode; system services; domain controllers;
Read More...
Here's an example of a way to add context-sensitive help to your application. The main idea is to simply use the built-in ApplicationCommands.Help command. This command is already tied to the F1 key, and so executes when you hit F1, and tells your command
Read More...
There are several elements in Wpf that have a "Stretch" property. The basic idea of these properties is to allow you to specify how an element adapts itself to a layout container, such as a Grid. For example, if you have a 100x200 pixel image, and it's
Read More...
If you’re really into Xml conformance, and you’ve really wondered how Xaml uses Xml namespaces, read on; I can cover the most relevant details in 1160 words or less … Namespaces on tags (I’m using the term “tag” here instead of the more correct term “element”,
Read More...
If you’ve look at much WPF Xaml you’ve probably seen bindings like this: < TextBlock Text = " {Binding Name " /> … which binds the Text property of the TextBlock to the Name property of some data object. The question that begets is: where does the
Read More...
Attachment(s): barrow.jpg
An example of a TreeView and HierarchicalDataTemplate being used to display a collection of collections.
Read More...
Attachment(s): hdt.jpg
ListBox has properties on it that allow you to control how the items in the list box get displayed. Those properties make sense if you understand some basic concepts of the ListBox, but sometimes I forget, so I wanted to post a picture on my wall. Except
Read More...
Attachment(s): ListBox.jpg
A lot has been written about how Xaml maps tags and attributes to objects and properties. But it’s not necessary that Xaml actually be used to create .Net objects. Maybe you don’t plan to for your markup to be mapped to objects, at least not today. But if you already work with Xaml, following the same syntax conventions as Xaml for your other markup provides some nice consistency and readability, and a possible future path to intuitive code manipulation.
Read More...
Attachment(s): OrgChart.JPG
Setter values in a style or template get shared, which is good for performance, but impacts how some features work, especially elements and Freezables.
Read More...
In WPF, controls have both a Loaded even and an Initialized event. Initializing and loading a control tend to happen at about the same time, and consequently these events fire at roughly the same time. But they have slightly – though important – different meanings, and the differences can be a source of confusion. So here’s some background on how we designed these events.
Read More...
A big part of WPF (Avalon) is the Xaml format for creating object trees. You can also go in the other direction – take an object tree and write it out to Xaml – with the XamlWriter class. That mostly just works, but there are cases where XamlWriter needs some help from you to write your class correctly. This post describes what you need to do.
Read More...