If I have this straight, you want a control that has something arbitrary displayed along with a drop-down button that displays a list of items with checkboxes next to them?
I wouldn't even bother trying to restyle a ComboBox
to achieve this. The problem is that ComboBox
is more specialized down a different path than what you need. If you look at the ComboBox ControlTemplate Example, you'll see that it simply uses a Popup
control to display the list of possible values.
You can take pieces of that template as guidance to creating a UserControl
that is easier to understand and better provides what you want. You'll even be able to add a SelectedItems
property and such that ComboBox
doesn't provide.
An example of what I mean by guidance: the Popup
has an IsOpen
property. In the control template, it's set to {TemplateBinding IsDropDownOpen}
, which means that the ComboBox
class has an IsDropDownOpen
property that is changed in order to control the expand/collapse of the Popup
.