How to update a custom dependency property when the datasource list changes

Posted by John on Stack Overflow See other posts from Stack Overflow or by John
Published on 2010-04-12T13:27:45Z Indexed on 2010/04/12 13:42 UTC
Read the original article Hit count: 318

Hi We have a user control with a custom dependency property (DP). The DP is bound to an ObservableCollection.

When a new item is added to the collection programatically, the databinding does not update the target DP. Why? We think it's because, unfortunately, in our case the target is not a ListBox or ListView, but a Canvas. The DP, when changed or initialized, is supposed to draw a Shape (!) onto the Canvas, and the shape's position and size is bound to the collection item's two properties: WIDTH, LEFT.

Ideally we don't want to clear the Canvas and redraw all items just becasue one has been added (or deleted). But how?

So: How can the custom DP take care of drawing the shape for the new collection item? What callback do we need, at what point in time does this have to happen, and what specific MetaDataOptions might there?

Also, are there any good resources out there concerning all these dependency property options. They are quite confusing. MSDN does not really help with what we're trying to do.

Thanks!

© Stack Overflow or respective owner

Related posts about wpf

Related posts about dependency-properties