WPF 实现任务栏角徽

 WPF开发者QQ群: 340500857  | 微信群 -> 进入公众号主页 加入组织

欢迎转发、分享、点赞、在看,谢谢~。  

01

效果预览

效果预览(更多效果请下载源码体验):

一、TaskbarItemInfoExample.xaml代码如下 

<Window x:Class="WPFDevelopers.Samples.ExampleViews.TaskbarItemInfoExample"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:WPFDevelopers.Samples"Owner="{x:Static local:App.CurrentMainWindow}"WindowStartupLocation="CenterOwner" Title="TaskbarItemInfoExample"mc:Ignorable="d" Height="211" Width="363"d:DesignHeight="450" d:DesignWidth="800"><Window.TaskbarItemInfo><TaskbarItemInfo /></Window.TaskbarItemInfo><Window.Resources><DataTemplate x:Key="TaskbarIcon"><Border Width="20" Height="20"Background="{StaticResource PrimaryPressedSolidColorBrush}"BorderBrush="{StaticResource WhiteSolidColorBrush}" BorderThickness="2"><TextBlock Text="{Binding}" TextAlignment="Center" Foreground="White" VerticalAlignment="Center"/></Border></DataTemplate></Window.Resources><WrapPanel VerticalAlignment="Center" HorizontalAlignment="Center"><Button Content="增加" Style="{StaticResource PrimaryButton}" Height="30" Width="120" Click="Button_Click" Tag="add"/><Button Content="移除" Style="{StaticResource PrimaryButton}" Height="30" Width="120" Click="Button_Click" Tag="remove"/></WrapPanel>
</Window>

二、TaskbarItemInfoExample.xaml.cs 代码如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;namespace WPFDevelopers.Samples.ExampleViews
{/// <summary>/// TaskbarItemInfoExample.xaml 的交互逻辑/// </summary>public partial class TaskbarItemInfoExample : Window{int iconWidth = 20;int iconHeight = 20;RenderTargetBitmap renderTargetBitmap;ContentControl contentControl;public TaskbarItemInfoExample(){InitializeComponent();this.Loaded += (s, e) =>{renderTargetBitmap = new RenderTargetBitmap(iconWidth, iconHeight, 96, 96, PixelFormats.Default);contentControl = new ContentControl();contentControl.ContentTemplate = ((DataTemplate)Resources["TaskbarIcon"]);};}private void Button_Click(object sender, RoutedEventArgs e){var btn = sender as Button;switch (btn.Tag.ToString()){case "add":CurrentTaskbarItemInfo("99");break;case "remove":TaskbarItemInfo.Overlay = null;break;default:break;}}void CurrentTaskbarItemInfo(string value){contentControl.Content = value;contentControl.Arrange(new Rect(0, 0, iconWidth, iconHeight));renderTargetBitmap.Render(contentControl);TaskbarItemInfo.Overlay = (ImageSource)renderTargetBitmap;}}
}

源码地址

github:https://github.com/yanjinhuagood/WPFDevelopers.git

gitee:https://gitee.com/yanjinhua/WPFDevelopers.git

WPF开发者QQ群: 340500857 

blogs: https://www.cnblogs.com/yanjinhua

Github:https://github.com/yanjinhuagood

出处:https://www.cnblogs.com/yanjinhua

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

转载请著名作者 出处 https://github.com/yanjinhuagood

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/300274.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

竞赛奇葩队名,学编程的人都是隐藏的段子手 | 今日最佳

全世界只有3.14 % 的人关注了青少年数学之旅

[翻译]asp.net ajax xml-script教程(二)

原文地址&#xff1a;http://dotnetslackers.com/articles/atlas/xml_script_tutorial_part2.aspx asp.net ajax xml-script教程&#xff08;二&#xff09;原文发布日期&#xff1a;2006.12.11作者&#xff1a;Alessandro Gallo翻译&#xff1a;webabcd概述在xml-script教程的…

工具

豆约翰博客备份专家 http://www.appinn.com/douyuehan-blog-backups/ 博客备份工具BlogDown转载于:https://www.cnblogs.com/bing11/p/3539268.html

C程序优化之路(二)

本文讲述在编写C程序代码的常用优化办法&#xff0c;分为I/O篇&#xff0c;内存篇&#xff0c;算法篇&#xff0c;MMX汇编篇。 二&#xff0e;内存篇 在上一篇中我们讲述了如何优化文件的读写&#xff0c;这一篇则主要讲述对内存操作的优化&#xff0c;主要有数组的寻址&#x…

long 对应oracle,【转】oracle number与java中long、int的对应

C&num; base 64图片编码解码使用WinForm实现了图片base64编码解码的 效果图: 示例base 64编码字符串: /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKD ...MyBatis知多少(8)关系型数据库MyBatis的存在就是为了简化对关系数据库的访问.数据库的确非常复杂,要正确地使…

应用内moniter

通过dotnet-counter moniter可以在应用外部启动监控应用&#xff0c;当然也可以在进程内来来进行监控指标的收集或展示。进程内监控的好处是不用启用多个服务来完成监控和服务的分离&#xff0c;只要应用启动&#xff0c;监控指标也就产生&#xff0c;是紧密关系。class Progra…

史上最具争议的博弈游戏,我用概率论、博弈论找到了答案

全世界只有3.14 % 的人关注了青少年数学之旅要说最近人气最火热的游戏&#xff0c;莫过于前段时间刚崛起的“多多自走棋”。而关于“多多自走棋 ”被讨论得最多的就是&#xff0c;“到底是靠运气还是技术?”都说吃鸡靠运气&#xff0c;但这些道具加成&#xff0c;在数学计算面…

并发编程(一): POSIX 使用互斥量和条件变量实现生产者/消费者问题

boost的mutex&#xff0c;condition_variable非常好用。但是在Linux上&#xff0c;boost实际上做的是对pthread_mutex_t和pthread_cond_t的一系列的封装。因此通过对原生态的POSIX 的mutex&#xff0c;cond的生成者&#xff0c;消费者的实现&#xff0c;我们可以再次体会boost带…

送给销售一族

投身销售英勇无畏工作行业看似高贵其实生活极其琐碎为了生计吃苦受累鞍前马后终日疲惫客人投诉照死赔罪点头哈腰就差下跪日不能息夜不能寐老板一叫立即到位一年到头加a班受罪劳动法规统统作废身心交瘁暗自流泪屁大点事反复开会逢年过节家人难会分分秒秒不敢离位迎接审核让人崩溃…

akka linux 端口,Actor模型开发库 Akka

Akka 是一个用 Scala 编写的库&#xff0c;用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。Actor模型并非什么新鲜事物&#xff0c;它由Carl Hewitt于上世纪70年代早期提出&#xff0c;目的是为了解决分布式编程中一系列的编程问题。其特点如下&#xff1…

简单粗暴的肢体语言解读攻略 | 今日最佳

全世界只有3.14 % 的人关注了青少年数学之旅&#xff08;图源网络&#xff0c;侵权删&#xff09;

基于事件驱动架构构建微服务第1部分:应用程序特定的业务规则

原文链接&#xff1a;https://logcorner.com/building-microservices-through-event-driven-architecture-part1-application-specific-business-rules/如今&#xff0c;洋葱或六边形等架构为代码的可测试性和维护、与外部框架的独立性提供了重要帮助。在本教程中&#xff0c;我…

WinhexV13.2汉化版

WinhexV13.2sr-11_H.rar转载于:https://blog.51cto.com/www520/16874

JavaWeb 项目启动时,后台开启一个线程的方法

原文链接&#xff1a;http://blog.csdn.net/it_wangxiangpan/article/details/7168286JavaWeb 服务启动时&#xff0c;在后台启动加载一个线程。目前&#xff0c;我所掌握的一共有两种方法&#xff0c;第一种是监听&#xff08;Listener&#xff09;&#xff0c;第二种是配置随…

linux脚本 逻辑运算,Linux-shell-逻辑运算和;

7.Shell7.5.2命令执行的判断依据&#xff1a; ; , &&, ||1.cmd ; cmd (不考虑指令相关性的连续指令下达)一般用于多条命令之间没有直接需求联系&#xff0c;最多只是有一个执行先后的关系。[rootlocalhost tmp]# sync; shutdown -h now2.与&&或 ||指令下达情况…

我居然从一只猫身上学到了斐波那契数列

猫的数学这么好是有原因的斐波那契数列&#xff08;Fibonacci sequence&#xff09;是由数学家列昂纳多斐波那契定义的把它写成数列的形式是这样的&#xff1a;1,1,2,3,5,8,13,21,34,55,89,...比如&#xff1a;人的耳朵比如&#xff1a;台风比如&#xff1a;松果的底部螺纹从两…

听说过Netflix的Chaos Monkey吗?不用羡慕,我们.NET也有

Chaos Monkey&#xff0c;是Netflix工程师创建的一种故障注入系统&#xff0c;它会随机在生产实例中引发各种各样的故障或异常&#xff0c;以确保它们的系统能够在这样的情况下存活&#xff0c;而不会对客户造成任何影响。可见&#xff0c;Chaos Monkey可以提高系统的安全和可用…

(ZT)VC++的链接错误LNK2001

学习VC&#xff0b;&#xff0b;时经常会遇到链接错误LNK2001&#xff0c;该错误非常讨厌&#xff0c;因为对于编程者来说&#xff0c;最好改的错误莫过于编译错误&#xff0c;而一般说来发生连接错误时&#xff0c;编译都已通过。产生连接错误的原因非常多&#xff0c;尤其LNK…

PHP中session与cookie的简单使用

2019独角兽企业重金招聘Python工程师标准>>> cookie简单实例&#xff1a; <?php if($_GET[out]){ //注销cookie setcookie(id,); setcookie(password,); echo "<script>location.hrefcookie.php</script>"; …

linux下安装服务,linux下的软件服务安装管理

在centos7下&#xff0c;为系统装一个服务有两种方式&#xff0c;一种是通过系统提供的rpm/yum自动安装&#xff0c;一种是通过服务的官网提供的安装包进行安装。rpm/yum 服务的安装及管理yum -y install 包名: 可以通过yum方式默认安装当前yum源中提供的软件服务&#xff0c;y…