私はxamlで定義されたボタンスタイルを持っています。内側にはストーリーボードなどがあります。ストーリーボードはグリッドの不透明度を0.1に設定しました。問題は、コードを介して復元する方法です。私はグリッドにアクセスし、不透明度を1に設定することができると思うが、私はC#でグリッドを取得する方法を見つけることができません。ここでwpfスタイル内の内側のグリッドを見つけよう
はコードです:
XAML:
<Style x:Key="BevelWLButton" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}" x:Name="bbtemplate">
<ControlTemplate.Resources>
<Storyboard x:Key="FadeOut" >
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="grid">
<EasingDoubleKeyFrame KeyTime="0" Value="1"/>
<EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="0.05"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</ControlTemplate.Resources>
<Grid x:Name="grid">
-------------- up is the grid i find
</Style>
ボタンは、コードによって作成されたスタイルは、ここで適切に
settedされて、私はストーリーボードを開始:
var story = btn.Template.Resources["FadeOut"] as Storyboard;
if (story != null)
{
story = story.Clone();
story.Begin(btn,btn.Template);
}
でも試してみると
currentButton.Resources["grid"]; or currentButton.Template.Resources["grid"];
結果はnullです。だから、私は不透明性をrestablishできません
すべてのアイデア?
ありがとうございます。
を試してみました行うことができますが、それはdidn'tはい –