Friday, 27 September 2013

How to bind data to a control's Visibility property

How to bind data to a control's Visibility property

I understand that the Visibility property of a control cannot be bound to
data in the same way that other properties can. It needs some kind of
converter(?). In trying to implement the solution from this question I run
into a compiler error that says: The resource "BoolToVisible" could not be
resolved. I'm guessing that I have to create a ResourceKey named
BoolToVisible, I just don't know how.
I'm requesting that someone show me the right way to Bind to the
Visibility property of a control.
*The control that I am adding this to is a radio button. * I have a bool
property for isVisible in my Data Model that will be bound to this radio
button.
Data Model Property:
private bool _isVisible = true;
public bool IsVisible
{
get { return _isVisible; }
set
{
_isVisible = value;
NotifyPropertyChange(() => IsVisible);
}
}
XAML:
<RadioButton Visibility="{Binding
DataModel.IsVisible,Converter={StaticResource
ResourceKey=BoolToVisible},RelativeSource={RelativeSource
TemplatedParent}}" ... />
Thank you.

No comments:

Post a Comment