2012-05-07 117 views
-1

的XAML代码如下:如何绑定visibility属性

<Helper:BooleanVisibilityValueConverter x:Key="BoolToVisible" /> 
    <Control x:Name="ResizeDecorator" MouseMove="ResizeDecorator_MouseMove" Template=" {StaticResource ResizeDecoratorTemplate}" Visibility="{Binding IsButtonVisible,Converter= {StaticResource ResourceKey=BoolToVisible},RelativeSource={RelativeSource TemplatedParent}}" /> 
<Helper:BooleanVisibilityValueConverter x:Key="BoolToVisible" /> 
<Control x:Name="ResizeDecorator" MouseMove="ResizeDecorator_MouseMove" Template="{StaticResource ResizeDecoratorTemplate}" Visibility="{Binding IsButtonVisible,Converter={StaticResource ResourceKey=BoolToVisible},RelativeSource={RelativeSource TemplatedParent}}" /> 

视图模型代码:

private bool _IsButtonVisible; 
public bool IsButtonVisible 
{ 
    get { return _IsButtonVisible; } 
    set 
    { 
     _IsButtonVisible = value; 
     NotifyPropertyChanged("IsButtonVisible"); 
    } 
} 

IsButtonVisible =false; 

谁能告诉我我要去哪里错了?

+0

哪里XAML代码?请妥善发布问题,以便人们可以帮助你! – GuruC

+0

XAML <助手:BooleanVisibilityValueConverter X:键= “BoolToVisible”/> <控制X:名称= “ResizeDecorator” 的MouseMove = “ResizeDecorator_MouseMove” 模板= “{StaticResource的ResizeDecoratorTemplate}” 能见度=“{结合IsButtonVisible,转换器= {StaticResource ResourceKey = BoolToVisible},RelativeSource = {RelativeSource TemplatedParent}}“/> – user1722947

+0

您可以通过编辑添加问题中的代码。我会为你做这个! – GuruC

回答

1

我猜测问题是你绑定到你的模板父母上的IsButtonVisible。相反,你需要绑定到IsButtonVisible你的模板父视图模型/ DataContext的 - 即

Visibility="{Binding DataContext.IsButtonVisible,Converter={StaticResource ResourceKey=BoolToVisible},RelativeSource={RelativeSource TemplatedParent}}"