1

我的应用程序中有弹出“正在播放”窗口,现在我想对其显示/隐藏应用任何很酷的效果。我不想每次需要显示/隐藏它时都创建/处理窗口,所以我想我不能使用Window.Triggers. 我创建了示例故事板并从代码隐藏中调用它;所以它瞬间陷入了异常No target was specified for 'System.Windows.Media.Animation.DoubleAnimation。我找到了这个答案并添加了Storyboard.TargetName属性。

    <Window.Resources>
        <Storyboard x:Key="OpenAnimation">
            <DoubleAnimation Storyboard.TargetName="NowPlaying" Storyboard.TargetProperty="(Window.Opacity)" Duration="0:0:5" From="0" To="1" />
        </Storyboard>
    </Window.Resources>

但它引发了另一个异常:Can't find name "NowPlaying" in namespace "VKPlaylist.GUI.NowPlaying".但是窗口代码隐藏类名 IS NowPlaying。我还尝试了使用名称空间的全名,但并没有改变。

我应该如何在此属性中指出正确的名称?有没有像“this”这样的“魔法”关键字,所以情节提要知道在哪里应用动画?我不能在 XAML 中将 name 属性分配给 window (并且可能不能)。看起来上面答案中的老兄只需添加此属性即可轻松解决他的问题。我错过了什么?

4

1 回答 1

2

您需要Name在您的上设置属性<Window>以便TargetName可以引用它。

于 2013-06-02T17:41:31.100 回答