WPF为提示信息文本增加闪烁效果

程序通常需要显示某些提醒用户警示的信息,如:收件箱(40)其中数量闪烁就会起到警示效果。可以适用如下Storyboard实现:

<ItemsControl.ItemTemplate>
<DataTemplate>
    <Button Command="{x:Static local:QueryRecordItem.OpenCommand}" FocusVisualStyle="{x:Null}" Focusable="False"
            ContextMenu="{StaticResource ShellContextMenu}" ToolTip="{Binding ToolTip}">
        <StackPanel Orientation="Horizontal">
            <TextBlock Text="{Binding Description}"/>
            <TextBlock Text="{Binding TipText}" Foreground="Red" Visibility="{Binding Converter={x:Static jsm:Converters.BooleanToVisibility}, Path=HasItem, ConverterParameter=true}"/>
            <Border Background="Red" CornerRadius="5" Visibility="{Binding Converter={x:Static jsm:Converters.BooleanToVisibility}, Path=HasItem}">
                <Border.Triggers>
                    <EventTrigger RoutedEvent="Loaded">
                        <BeginStoryboard>
                            <Storyboard BeginTime="0:0:0" AutoReverse="True" RepeatBehavior="Forever">
                                <ColorAnimation From="Red" To="Navy" RepeatBehavior="Forever" Storyboard.TargetProperty="Background.Color">
                                </ColorAnimation>
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger>
                </Border.Triggers>
                <TextBlock Text="{Binding TipText}" Foreground="White"/>
            </Border>
        </StackPanel>
    </Button>
</DataTemplate>
</ItemsControl.ItemTemplate>

WPF为提示信息文本增加闪烁效果

时间: 2024-10-21 12:25:54

WPF为提示信息文本增加闪烁效果的相关文章

Failed to create a &#39;System.Type&#39; from the text &#39; &#39; in wpf(无法从文本创建类型)

问题描述:WPF is unable to create a type for data templateWPF使用mvvm模式无法加载DataTemplate模板定义的资源,提示无法从文本创建类型错误.原因:Resource Dictionary的编译动作被设置成了Resource,设置成Page则不会出现这个问题.解决方案:将文件的编译行为修改为“Page”. Failed to create a 'System.Type' from the text ' ' in wpf(无法从文本创建类

WPF中的文本度量

关于WPF中的文本度量,需要了解以下几个问题: WPF中支持一些常用的度量单位:px(device independent pixels).in(inches).cm(centimeters).pt(points) 缺省的单位是px,当然也可以通过加单位来强制使用该单位.比如: 设备无关像素和物理像素: 1 deveice independent pixel = 1/96 inch 1 physical pixel = 1/DPI inch 默认情况下,系统DPI为96,此时设备无关像素与物理像

[WPF]实现TextBox文本框单击全选

原文:[WPF]实现TextBox文本框单击全选 /// <summary> /// Void:设置获取焦点时全选文本 /// </summary> /// <param name="textbox">指定文本框</param> public void SetSelectionAllOnGotFocus(TextBox textbox) { MouseButtonEventHandler _OnPreviewMouseDown = (se

WPF 语言格式化文本控件

前言 本章讲述正确添加语言资源的方式,以及一段语言资源的多种样式显示. 例如:“@Winter,你好!感谢已使用软件 800 天!” 在添加如上多语言资源项时,“XX,你好!感谢已使用软件 X 天!” 那么,你是怎么添加语言资源的呢? 分别添加,“,你好!”.“感谢已使用软件”.“年”3个,再通过界面绑定动态变量 昵称和使用天数? 假如你是按照如上添加语言资源的,那么问题来了,添加如上英文语言资源呢?是不是也分别添加单个资源,再拼凑绑定? 添加语言资源 正确的做法是,添加整个语言资源,“{0},

WPF StringFormat 格式化文本

StringFormat对特定数据格式的使用 WPF中,对数字/日期等的格式化,可参考此篇博客:https://www.cnblogs.com/zhengwen/archive/2010/06/19/1761036.html StringFormat对语言项的格式化 1.单个动态数据绑定 例如:“已使用此软件 365 天!”,WPF中可如下处理 添加资源项: 1 <system:String x:Key="LangSource1">已使用此软件 {0} 天!</sys

WPF 定时写入文本

public static void Start() { ThreadStart start = new ThreadStart(ThreadAction); Thread th = new Thread(start); th.IsBackground = true; th.Start(); } public static void ThreadAction() { while (true) { try { System.Threading.Thread.Sleep(3000); StreamW

WPF RichTextBox设置文本颜色

//追加 txtResult.Document.Blocks.Add(new Paragraph(new Run("add by run") { Foreground = Brushes.Blue })); //替换 txtResult.Selection.Text = "add by selection"; txtResult.Selection.ApplyPropertyValue(TextElement.ForegroundProperty, Brushes.

运用WPF和ADO.Net实现限制登录错误次数的简单登录界面

最近看了一下传智播客的免费公开课视频,有一个登录界面的小练习.其中涉及到登录时间的限定功能,并未实现.所以我就自己动手写了一个,大家可以看看. 首先编写SqlHelper类,通过SqlHelper类实现SQL单语句操作数据库.代码如下: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Data.SqlClient; 6 usin

【WPF学习】第十九章 控件类

原文:[WPF学习]第十九章 控件类 WPF窗口充满了各种元素,但这些元素中只有一部分是控件.在WPF领域,控件通常被描述为与用户交互的元素--能接收焦点并接受键盘或鼠标输入的元素.明显的例子包括文本框和按钮.然而,这个区别有时有些模糊.将工具提示视为控件,因为它根据用户鼠标的移动显示或消失.将标签视为控件,因为它支持记忆码(mnemonics,将焦点转移到相关控件快捷键). 所有控件都继承自System.Windows.Control类,该类添加了一小部分基本的基础结构: 设置控件内容对齐方式