다른 ControlTemplate의 일부인 개체에 ControlTemplate의 일부인 개체의 불투명도를 바인딩하는 방법을 알려드립니다. 나는 이것을 시도했지만 아무 것도하지 않았다.다른 ControlTemplate에서 개체의 불투명도에 따라 불투명도 값을 바인딩하는 방법?
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border x:Name="border" BorderBrush="#FF6E6E6E" BorderThickness="0.5" Opacity="0" Background="#00000000">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="border">
<EasingDoubleKeyFrame KeyTime="0" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed"/>
<VisualState x:Name="Disabled"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsKeyboardFocused" Value="true"/>
<Trigger Property="ToggleButton.IsChecked" Value="true"/>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="#ADADAD"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
내가
<ControlTemplate x:Key="ThumbnailContainerTemplate" TargetType="{x:Type ContentControl}">
<Border x:Name="PART_Border" BorderThickness="1" BorderBrush="#FFd9d9d9" Opacity="0" />
<Grid Margin="10">
<Image x:Name="PART_IconHover" Source="{Binding IconHover}" Opacity="{Binding Opacity, ElementName=border, Mode=OneWay}" />
</Grid>
아래의 ControlTemplate의 이미지 불투명도를 바인딩 할 : 다음은
Image x:Name="PART_IconHover" Source="{Binding IconHover}" Opacity="{Binding Opacity, ElementName=border, Mode=OneWay}" />
두 ControlTemplates의 코드 모든 이드 eas 매우 감사합니다. 미리 감사드립니다.
도움 주셔서 감사합니다. 그것은 유효한 포인트입니다. 샘플에 구현하려고합니다. 내가 성공할 것인지 알려 드리겠습니다. – vladc77
@ vladc77 : 네, 잘하면 그럴 것입니다! 내가 게시 한 코드는 내가 작성한 문제의 샘플 앱에서 나왔고 저에게 효과적이었습니다. 그것은 매우 역동적 인 해결책이 아니지만 만약 당신이 단지 한두 장소에서 이것을 필요로한다면 그것은 문제가 될 것입니다. :) –
동적으로 생성 된 컨트롤에서이 동작이 필요합니다. 내 걱정은 런타임에 생성 된 다른 컨트롤의 불투명도가 변경되는 경우입니다. – vladc77