Wpf 如何避免切换到选项卡时显示错误文本
根据问题中给出的答案,我能够闪现我的错误文本Wpf 如何避免切换到选项卡时显示错误文本,wpf,xaml,Wpf,Xaml,根据问题中给出的答案,我能够闪现我的错误文本 <ControlTemplate x:Key="ErrorTemplate"> <StackPanel Orientation="Horizontal"> <AdornedElementPlaceholder x:Name="textBox"/> <ItemsControl ItemsSource="{Binding}" VerticalAlignment="Cente
<ControlTemplate x:Key="ErrorTemplate">
<StackPanel Orientation="Horizontal">
<AdornedElementPlaceholder x:Name="textBox"/>
<ItemsControl ItemsSource="{Binding}" VerticalAlignment="Center" HorizontalAlignment="Center">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding ErrorContent}" Foreground="Red" Margin="5,0,0,0">
<TextBlock.Triggers>
<EventTrigger RoutedEvent="Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity" From="1" To="0" AutoReverse="False" Duration="0:0:0.5" RepeatBehavior="3x" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</TextBlock.Triggers>
</TextBlock>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</ControlTemplate>
如果切换到较新的界面,您应该能够处理
ErrorsChanged
事件。我必须在.NET 4.0中实现这一点。动画完成后,有没有办法清除xaml
中的错误文本?这将如何解决您的原始问题?我的验证是这样工作的。当用户输入无效值时,我会使用正确的错误消息设置属性ValidationErrorMessage
,并将UI控件设置回以前的有效值。错误文本将闪烁几秒钟并隐藏。因此,如果我可以在动画之后清除ValidationErrorMessage
,则在重新加载控件时不会显示任何错误。
public string this[string columnName]
{
get
{
if (columnName == nameof(this.CurrentValue))
{
if (this.ShowErrorMessage)
{
return ValidationErrorMessage;
}
}
return null;
}
}