Ich stoße auf einen Fehler in meiner XAML-Anwendung.XAML Storyboard DependencyObject Fehler
Der Fehler Ich erhalte ist
'[unbekannt]' Eigenschaft verweist nicht auf einen Pfad in DependencyObject '(0). (1) [2]. (2)'.
Ich suchte herum und fand heraus, dass sich etwas in <Image.RenderTransform>
Tag in Page.xaml für RotateTransform gehen muss, aber ich bin nicht sicher, was da ich XAML neu bin und immer noch lernen.
App.xaml
<Storyboard x:Key="spin">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)"
Storyboard.TargetName="{Binding}"
RepeatBehavior="Forever">
<EasingDoubleKeyFrame KeyTime="0:0:1"
Value="360"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
Page.xaml
<Page.Triggers>
<EventTrigger RoutedEvent="FrameworkElement.Loaded">
<BeginStoryboard Storyboard="{DynamicResource spin}"/>
</EventTrigger>
</Page.Triggers>
<Image x:Name="image1"
Margin="0, 0, 5, 0"
Source="{StaticResource inProcessImage}"
Width="18"
RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Image.RenderTransform>
</Image>
<Image x:Name="image2"
Margin="0, 0, 5, 0"
Source="{StaticResource inProcessImage}"
Width="18"
RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Image.RenderTransform>
</Image>
Code hinter
startAni("spin", image1.Name);
startAni("spin", image2.Name);
void startAni(string storyboardName, string objectName)
{
Storyboard sb = FindResource(storyboardName) as Storyboard;
foreach (var child in sb.Children)
Storyboard.SetTargetName(child, objectName);
sb.Begin(this); // do not forget the this keyword
}
Storyboard.TargetProperty + TargetName sind hier seltsam. Woher hast du das? – jHilscher
@jHilscher 'TargerProperty' wird durch Blend erzeugt. Verwenden Sie 'TargetName', um den Namen zu binden, da ich ihn auf verschiedenen Bildern verwenden werde. Danke – Omar