I have 4 buttons in grid which datacontext is set to an object which has property that indicates what button should be enabled (it’s enumerable).
Currenty I have done this in code-behind so that when that specific property changes, it disables all but one depending on the value. It works, but I really don’t like to put stuff like this to code-behind. There must be a way to do this in xaml?
I could make own style for all four buttons and then do this with data triggers, but I would prefer more generic approach: use same style for all buttons that somehow applies differently depending on, for example, a button name and value of the property.
Thanks in advance.
You could use a MultiBinding to bind the IsEnabled property to a combination of the control’s name and the property from your DataContext, and create a Style to apply it to all buttons in the Grid:
And in code: