【发布时间】:2014-10-17 09:20:17
【问题描述】:
我有自定义按钮控件 FancyButton(显然是为重用而创建的),如下所示,还有一些代码(主要是依赖属性):
<Button x:Class="Views.Controls.FancyButton"
...... >
<Button.ContentTemplate>
<DataTemplate>
....
</DataTemplate>
</Button.ContentTemplate>
</Button>
下面,这个控件的用法,触发器应该开始在鼠标上切换弹出属性,但不是它,我面临的异常是
在名称范围内找不到“弹出”名称 'Views.Controls.FancyButton'。
<controls:FancyButton x:Name="ChooseButton" ServerConnection="{Binding CurrentServer}">
<Button.Triggers>
<EventTrigger SourceName="ChooseButton" RoutedEvent="UIElement.PreviewMouseLeftButtonUp">
<BeginStoryboard>
<Storyboard>
<BooleanAnimationUsingKeyFrames Storyboard.TargetName="Popup" Storyboard.TargetProperty="(IsOpen)">
<DiscreteBooleanKeyFrame KeyTime="00:00:00" Value="True"/>
</BooleanAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</controls:FancyButton >
<Popup Placement="Bottom" Name="Popup">
..........
</Popup>
以前的解决方案 - 当直接使用 Button 控件时 - 按预期工作,但我有 XAML 重复。
它有什么变化以及如何使其发挥作用?
【问题讨论】:
-
这是因为命名约定,请在将Popup名称设置为其他名称后尝试,例如Popup1。
-
感谢@AshokRathod 的提示,但它没有帮助,仍然是同样的问题,跟着你我也将 Popup Name= 更改为 Popup x:Name,结果相同。
-
由于与系统保留字冲突,请将控件名称改为popup1。
-
是的,我只是在你第一次回答后才这样做,抛出了同样的异常
标签: wpf storyboard