Custom Image Button and Radio/Toggle Button from Common Base Class

Posted by Wonko the Sane on Stack Overflow See other posts from Stack Overflow or by Wonko the Sane
Published on 2010-05-10T16:08:59Z Indexed on 2010/05/12 12:54 UTC
Read the original article Hit count: 186

Filed under:
|
|

Hi All,

I would like to create a set of custom controls that are basically image buttons (it's a little more complex than that, but that's the underlying effect I'm going for) that I've seen a few different examples for. However, I would like to further extend that to also allow radio/toggle buttons.

What I'd like to do is have a common abstract class called ImageButtonBase that has default implementations for ImageSource and Text, etc. That makes a regular ImageButton implementation pretty easy.

The issue I am having is creating the RadioButton flavor of it. As I see it, there are at least three options:

  1. It would be easy to create something that derives from RadioButton, but then I can't use the abstract class I've created.
  2. I could change the abstract class to an interface, but then I lose the abstract implementations, and will in fact have duplication of code.
  3. I could derive from my abstract class, and re-implement the RadioButton-type properties and events (IsChecked, GroupName, etc.), but that certainly doesn't seem like a great idea.

Note: I have seen http://stackoverflow.com/questions/2362641/how-to-get-a-group-of-toggle-buttons-to-act-like-radio-buttons-in-wpf, but what I want to do is a little more complex.

I'm just wondering if anybody has an example of an implementation, or something that might be adapted to this kind of scenario. I can see pros and cons of each of the ideas above, but each comes with potential pitfalls.

Thanks, wTs

© Stack Overflow or respective owner

Related posts about wpf

Related posts about c#