BenCon's WebLog

D2D development blog

Browse by Tags

Tagged Content List
  • Blog Post: Cool trick with Dependency Properties

    One of the cool things about dependency properties is that they allow other things to be dependent on them and notified of changes to them (hence their name). However, one thing that people will sometimes stumble upon is that they want to know about a change to a particular property value but WPF does...
  • Blog Post: IScrollInfo tutorial part IV

    After our last installment, which was written many moons ago (literally), the only remaining thing left to do (apart from clean up the code a bit) was to implement the IScrollInfo.MakeVisible method. Somebody has requested that I address this, so I am going to attempt to fulfill that. The idea of...
  • Blog Post: More advanced attached property use: the Ramora pattern

    I like to think of the technique I am about to demonstrate as the Ramora pattern - it allows you to attach a chunk of logic to any existing element that you have. The RadialPanel example showed an example of storing information on an element using attached properties. In that example, we did not need...
  • Blog Post: Attached properties - the basics

    One of the coolest features in Avalon is the property subsystem. While it might seem difficult for some that Avalon has a property system built on top of the normal CLR properties, the power that this system gives you is incredible and is part of why a lot of scenarios in Avalon require less code than...
  • Blog Post: IValueConverter in WPF data binding

    One of the handy things that you can do with data binding in WPF is that you convert the data as you pull it from the data source. The mechanism for this is the IValueConverter interface. Let's say that you have a list of numbers representing positions in a race, and you want to display this list with...
  • Blog Post: Spring Blog cleaning

    Whatever tiny readership I have has probably noticed that I have tried to clean up the blog a bit, fix up some links and post some new content. I even picked a spiffy new blog template. Hopefully the momentum can be kept up this time. My post count is woeful, and I always procrastinate writing on...
  • Blog Post: ItemsControl Customization

    One of the cool things about ItemsControls is that you get to separate the data binding and item control logic from the layout logic by specifying the Panel that you want to lay items out. There are two ways of specifying a Panel for an ItemsControl. One of them is to use the ItemsPanel property,...
  • Blog Post: The ItemsControl paradigm

    So what is an ItemsControl anyway? I think that this might be one of the steeper learning curves coming from Win32 like I did, so I thought that I would write about it. An ItemsControl is a control that owns items, whether through a collection of them that it owns or through data binding. The most...
  • Blog Post: Responding to comments

    I just noticed that somebody asked an IScrollInfo question and I did not notice. I need to learn how to use the blogging software a little better :( The question was basically about when ScrollOwner is set and why there are so many duplicated properties between the Panel and the ScrollViewer. The...
  • Blog Post: IScrollInfo in Avalon part III

    When we last left the application it had the appearance of something that could scroll, but exceptions were being thrown from unimplemented members left and right. This posting will help out with that. Let's look at the SetVerticalOffset method as the first case. This method is called when the user...
  • Blog Post: IScrollInfo in Avalon part II

    At the end of the first part we have created a custom panel that implements IScrollInfo, but if you try to scroll we throw exceptions, and we cannot see the content. Since this is a Panel, we need to start seeing content so that we can scroll the content later. First we will implement MeasureOverride...
  • Blog Post: IScrollInfo in Avalon part I

    Recently I invested the time to learn how to implement the IScrollInfo interface on a control in Avalon. This was an interesting learning experience, and since the existing documentation for this feature is not out in the wild yet, and I figure that people want to learn how to do this, I decided to write...
Page 1 of 1 (12 items)