我有一個在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>
按鈕由代碼中創建和風格是否正確設置好的
在這裏,我開始故事板:
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"];
結果爲空。所以,我不能重建不透明度
任何想法?
在此先感謝。
肯定的,但它didn't工作 –