为什么我不能创建触发器并将其用作XAML中的静态资源?
<Window.Resources>
<Trigger x:Key="ValidationTrigger" x:Shared="False" Property="Validation.HasError" Value="true">
<Setter Property="FrameworkElement.ToolTip"
Value="{Binding RelativeSource={x:Static RelativeSource.Self},
Path=(Validation.Errors)/ErrorContent}"/>
</Trigger>
<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Style.Triggers>
<StaticResource ResourceKey="ValidationTrigger"/>
</Style.Triggers>
</Style>
</Window.Resources>
我在运行时收到错误消息 “价值不能无效 参数名称:triggerBase标记文件中对象'System.Windows.Markup.StaticResourceHolder'的错误“
答案 0 :(得分:1)
我想这是因为首先加载了资源。
因此,在这种情况下,WPF会尝试在可能与之关联的任何控件之前加载触发器。那么此时无法评估触发值。
但需要确认:)