当前位置: 首页 > news >正文

WPF Flyout风格动画消息弹出消息提示框

WPF Flyout风格动画消息弹出消息提示框

效果如图:
请添加图片描述
XAML:

<Window x:Class="你的名称控件.FlyoutNotication"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:dxi="http://schemas.devexpress.com/winfx/2008/xaml/core/internal"xmlns:dxmvvm="http://schemas.devexpress.com/winfx/2008/xaml/mvvm"xmlns:dxt="http://schemas.devexpress.com/winfx/2008/xaml/core/themekeys"xmlns:local="clr-namespace:SMAT.Controls"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"Title="FlyoutNotication"Width="300"Height="80"AllowsTransparency="True"Background="Transparent"ResizeMode="NoResize"WindowStartupLocation="Manual"WindowStyle="None"mc:Ignorable="d"><Window.Resources><Storyboard x:Key="Show"><DoubleAnimation Storyboard.TargetName="Translate"Storyboard.TargetProperty="X"From="310"To="0"Duration="0:0:0.5"><DoubleAnimation.EasingFunction><CubicEase EasingMode="EaseOut" /></DoubleAnimation.EasingFunction></DoubleAnimation></Storyboard><Storyboard x:Key="Hide"><DoubleAnimation Storyboard.TargetName="Translate"Storyboard.TargetProperty="X"To="310"Duration="0:0:0.5"><DoubleAnimation.EasingFunction><CubicEase EasingMode="EaseOut" /></DoubleAnimation.EasingFunction></DoubleAnimation></Storyboard></Window.Resources><Border Background="Gray" BorderBrush="LightGray" BorderThickness="1"><Border.RenderTransform><TransformGroup><TranslateTransform x:Name="Translate" X="300" /></TransformGroup></Border.RenderTransform><Grid><Grid.RowDefinitions><RowDefinition Height="auto" /><RowDefinition /></Grid.RowDefinitions><TextBlock x:Name="Title"Margin="12,12,4,4"FontSize="16"FontWeight="Bold"Text="标题" /><TextBlock x:Name="Message"Grid.Row="1"Margin="12,4"Text="消息内容"TextWrapping="Wrap" /></Grid></Border></Window>

C#:

 /// <summary>/// FlyoutNotication.xaml 的交互逻辑/// </summary>public partial class FlyoutNotication : Window{public FlyoutNotication(){InitializeComponent();}public static async void ShowNotication(string message, string title){FlyoutNotication flyoutNotication = new FlyoutNotication(){Owner = Application.Current.MainWindow,ShowInTaskbar = false,Left = Application.Current.MainWindow.ActualWidth+ (Application.Current.MainWindow.WindowState == WindowState.Maximized?-20: Application.Current.MainWindow.Left) - 300,Top = Application.Current.MainWindow.ActualHeight + (Application.Current.MainWindow.WindowState == WindowState.Maximized ? -20 : Application.Current.MainWindow.Top) - 80,};flyoutNotication.Message.Text = message;flyoutNotication.Title.Text = title;var sbShow = flyoutNotication.FindResource("Show") as Storyboard;flyoutNotication.Show();sbShow.Begin();await Task.Delay(2000);var sbHide = flyoutNotication.FindResource("Hide") as Storyboard;sbHide.Completed += (s, e) => flyoutNotication.Close();sbHide.Begin();}}

调用控件:

FlyoutNotication.ShowNotication("测试消息提示", "标题");

相关文章:

WPF Flyout风格动画消息弹出消息提示框

WPF Flyout风格动画消息弹出消息提示框 效果如图&#xff1a; XAML: <Window x:Class"你的名称控件.FlyoutNotication"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xam…...

Spring Boot 集成 Redis

Spring-data-redis 在 Spring 中整合 Redis jedis : 采用的直连&#xff0c;多个线程操作的话&#xff0c;是不安全的&#xff0c;如果想要避免不安全的&#xff0c;使用 jedis pool 连接池 lettuce : 采用netty&#xff0c;实例可以再多个线程中进行共享&#xff0c;不存在…...

Java线程之间通信方式

目录 1 线程之间的通信方式主要有以下几种2 共享变量3 锁机制4 条件变量5 信号量6 管道 1 线程之间的通信方式主要有以下几种 在实际开发时&#xff0c;一个进程中往往有很多个线程&#xff0c;大多数线程之间往往不是绝对独立的&#xff0c;比如说我们需要将A和B 两个线程的执…...

【LeetCode-中等题】367. 有效的完全平方数

文章目录 题目方法一&#xff1a;二分查找 题目 方法一&#xff1a;二分查找 找 1 - num 之间的 mid&#xff0c; 开方是整数 就找得到 mid&#xff0c; 不是整数自然找不到mid class Solution { // 二分查找 &#xff1b;找 1 - num 之间的mid 开方是整数 就找得到 不是…...

英语单词(二)

1.int:整形 2.char:字符型 3.scanner:接受输入,扫描器 4.integer:整数,整形 5.type:类型 6.string:字符串类型 7.double:双精度浮点型...

Django 用相对路径方式引用自定义模块 或 文件

Django的文件夹结构 projectName/websiteName/appName manage.py 所在路径为&#xff1a;D:/projectA/website1/manage.py views.py 所在路径为&#xff1a;D:/projectA/website1/app1/views.py D:/projectA/website1/app1/module1.py 如果要引用自定义模块&#xff0c;引用…...

企业架构LNMP学习笔记22

防盗链原理和实现。 域名A的资源文件&#xff0c;经常被域名B直接调用访问。 而用户经常访问域名B&#xff0c;看到的资源&#xff08;图片等&#xff09;以为是域名B的&#xff0c;实际则是域名A的。 但是域名A没有获得任何收益&#xff0c;却要给域名B来源的访问消耗服务器…...

uniapp和小程序设置tabBar和显示与隐藏tabBar

&#xff08;1&#xff09;设置tabBar&#xff1a; uni.setTabberItem({ }); wx.setTabberItem({ }); 属性值&#xff1a; indexnumber是tabBar 的哪一项&#xff0c;从左边算起&#xff0c;索引从0开始textstring否tab 上按钮文字iconPathstring否图片路径selectedIc…...

物联网、无线通讯

LAN&#xff1a;局域网 Local Area Network WAN&#xff1a;广域网 Wide Area Network WLAN&#xff1a;无线局域网 Wireless LAN LPWAN&#xff1a;低功耗广域网 Low Power Wide Area Network技术特点无线通信技术应用场景高功耗、高速率的远距离传输3G、4G蜂窝这类传输技术适…...

Pod和容器设计模式

为什么需要Pod 一些应用的实现是需要多个进程配合完成的&#xff0c;由于容器实际上是一个“单进程”模型&#xff0c;如果在容器里启动多个进程会存在进程管理的难题。在Kubernetes里面&#xff0c;实际上会被定义为一个拥有四个容器的Pod。 Pod相当于进程组 Kubernetes 是…...

docker系列(3) - 常用软件安装

文章目录 3. docker安装常用软件3.1 安装nginx3.2 安装redis3.3 安装mysql3.4 部署springboot程序3.4.1 编写dockerfile3.4.2 构建镜像3.4.3 启动镜像 3. docker安装常用软件 3.1 安装nginx docker pull nginx#挂载启动 docker run -it -d \ --namenginx \ --networkpub_netw…...

Apache Hive之数据查询

文章目录 版权声明数据查询环境准备基本查询准备数据select基础查询分组、聚合JOINRLIKE正则匹配UNION联合Sampling采用Virtual Columns虚拟列 版权声明 本博客的内容基于我个人学习黑马程序员课程的学习笔记整理而成。我特此声明&#xff0c;所有版权属于黑马程序员或相关权利…...

OpenCV---视频操作

用摄像头捕获视频 import cv2 as cv import numpy cap cv.VideoCapture(0) while(cap.isOpened()):ret, frame cap.read() # read() 它返回两个值&#xff0c;第一个是布尔值&#xff0c;表示是否成功读取到一帧&#xff0c;第二个是帧本身。cv.imshow(Video, frame)if c…...

《TCP/IP网络编程》阅读笔记--进程间通信

目录 1--进程间通信 2--pipe()函数 3--代码实例 3-1--pipe1.c 3-2--pipe2.c 3-3--pipe3.c 3-4--保存信息的回声服务器端 1--进程间通信 为了实现进程间通信&#xff0c;使得两个不同的进程间可以交换数据&#xff0c;操作系统必须提供两个进程可以同时访问的内存空间&am…...

mysql中show status参数介绍

Uptime_since_flush_status, 2159061&#xff1a;自上次刷新状态以来的服务器运行时间&#xff08;以秒为单位&#xff09;。Uptime, 2159061&#xff1a;服务器的总运行时间&#xff08;以秒为单位&#xff09;。Threads_running, 2&#xff1a;当前正在运行的客户端线程数。T…...

Tomcat服务的部署及配置优化

文章目录 1. Tomcat的相关介绍1.1 Tomcat简介1.2 Tomcat的核心组件1.2.1 Web容器1.2.2 Servlet容器1.2.3 JSP容器 1.3 Tomcat的功能组件1.3.1 connector连接器1.3.2 container容器1.3.2.1 子容器及其相关功能 1.4 主要作用1.5 Tmocat处理请求的过程 2. Tomcata服务部署2.1 安装…...

入门力扣自学笔记279 C++ (题目编号:1123)

1123. 最深叶节点的最近公共祖先 题目&#xff1a; 给你一个有根节点 root 的二叉树&#xff0c;返回它 最深的叶节点的最近公共祖先 。 回想一下&#xff1a; 叶节点 是二叉树中没有子节点的节点树的根节点的 深度 为 0&#xff0c;如果某一节点的深度为 d&#xff0c;那它…...

【AIGC专题】Stable Diffusion 从入门到企业级实战0402

一、概述 本章是《Stable Diffusion 从入门到企业级实战》系列的第四部分能力进阶篇《Stable Diffusion ControlNet v1.1 图像精准控制》第02节&#xff0c; 利用Stable Diffusion ControlNet Openpose模型精准控制图像生成。上一节&#xff0c;我们介绍了《Stable Diffusion C…...

【Spring事务】Spring事务的传播机制(通俗易懂)

目录 什么是spring事务 Spring事务的传播机制 什么是spring事务 封装在数据库事务之上的一种事务处理机制。其管理方法有两种&#xff0c;分别是编程式事务以及声明式事务。一般我们使用Transactional进行声明式事务。 Spring事务的传播机制 Spring的事务传播机制种类 传播行…...

使用 Python 的高效相机流

一、说明 让我们谈谈在Python中使用网络摄像头。我有一个简单的任务&#xff0c;从相机读取帧&#xff0c;并在每一帧上运行神经网络。对于一个特定的网络摄像头&#xff0c;我在设置目标 fps 时遇到了问题&#xff08;正如我现在所理解的——因为相机可以用 mjpeg 格式运行 30…...

pycharm使用

在使用pycharm时&#xff0c;有时一个回车或者一个tab键&#xff0c;缩进的长度不符合预期可以调整设置tab键缩进的长度&#xff1a; 平时工作中&#xff0c;不同的人在编辑代码缩进的时候&#xff0c;有的人喜欢按四个或者六个空格&#xff0c;有的人喜欢按tab键&#xff0c;而…...

C++项目实战——基于多设计模式下的同步异步日志系统-②-相关技术补充(不定参函数)

文章目录 专栏导读不定参函数C风格不定参函数不定参宏函数 专栏导读 &#x1f338;作者简介&#xff1a;花想云 &#xff0c;在读本科生一枚&#xff0c;C/C领域新星创作者&#xff0c;新星计划导师&#xff0c;阿里云专家博主&#xff0c;CSDN内容合伙人…致力于 C/C、Linux 学…...

iOS开发Swift-10-位置授权, cocoapods,API,天气获取,城市获取-和风天气App首页代码

1.获取用户当前所在的位置 在infi中点击加号,选择权限:当用户使用app的时候获取位置权限. 填写使用位置权限的目的. 2.获取用户的经纬度. ViewController: import UIKit import CoreLocationclass ViewController: UIViewController, CLLocationManagerDelegate { //遵循CLL…...

CNN(七):ResNeXt-50算法的思考

&#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊|接辅导、项目定制 在进行ResNeXt-50实战练习时&#xff0c;我也跟其他学员一样有这个疑惑&#xff0c;如下图所示&#xff1a; 反复查看代码&#xff0c;仍然有…...

【人月神话】深入了解软件工程和项目管理

文章目录 &#x1f468;‍⚖️《人月神话》的主要观点&#x1f468;‍&#x1f3eb;《人月神话》的主要内容&#x1f468;‍&#x1f4bb;作者介绍 &#x1f338;&#x1f338;&#x1f338;&#x1f337;&#x1f337;&#x1f337;&#x1f490;&#x1f490;&#x1f490;&a…...

52、基于函数式方式开发 Spring WebFlux 应用

★ Spring WebFlux的两种开发方式 1. 采用类似于Spring MVC的注解的方式来开发。此时开发时感觉Spring MVC差异不大&#xff0c;但底层依然是反应式API。2. 使用函数式编程来开发★ 使用函数式方式开发Web Flux 使用函数式开发WebFlux时需要开发两个组件&#xff1a; ▲ Han…...

MySQL的用户管理

1、MySQL的用户管理 &#xff08;1&#xff09;创建用户 create user zhang3 identified by 123123;表示创建名称为zhang3的用户&#xff0c;密码设为123123。 &#xff08;2&#xff09;了解user表 1&#xff09;查看用户 select host,user,authentication_string,select…...

LeetCode //C - 114. Flatten Binary Tree to Linked List

114. Flatten Binary Tree to Linked List Given the root of a binary tree, flatten the tree into a “linked list”: The “linked list” should use the same TreeNode class where the right child pointer points to the next node in the list and the left child …...

利用transform和border 创造简易图标,以适应uniapp中多字体大小情况下的符号问题

heml: <text class"icon-check"></text> css: .icon-check {border: 2px solid black;border-left: 0;border-top: 0;height: 12px;width: 6px;transform-origin: center;transform: rotate(45deg);} 实际上就是声明一个带边框的div 将其中相邻的两边去…...

C/C++指针函数与函数指针

一、指针函数 指针函数&#xff1a;本质为一个函数&#xff0c;返回值为指针指针函数&#xff1a;如果一个函数的返回值是指针类型&#xff0c;则称为指针函数用指针作为函数的返回值的好处&#xff1a;可以从被调函数向主函数返回大量的数据&#xff0c;常用于返回结构体指针。…...

wordpress用lnmp还是lamp/seo推广优化平台

ps aux | grep spring | xargs kill -9 更多技术文章请关注公众号:架构师Plus, 扫码添加...

网站建设公司 成本结转/如何制作自己的网站教程

Oracle Database 10g Release 2 (10.2.0) RAC for RedHat4Oracle Rac 10.2.0.1升级至10.2.0.4 升级集群件-滚动升级 升级数据库软件-停用后升级 升级数据库 共计耗时5小时Orz... 第一部分&#xff1a;集群件滚动升级【OUI crs_home】 1、系统环境 操作系统版本 [10:42:13oracle…...

wordpress安装主题教程/谷歌seo优化技巧

gentoo nrpe-2.12 # echo $0-bashgentoo nrpe-2.12 # echo $SHELL/bin/bash rm -rf */* //删除目录下所有文件,保留当前的位置下的所有文件和目录. $(命令) 返回该命令的结果 ./configure --prefix/etc/nagios >Makefile.in生成Makefile c121 #ls nrpe-2.12 nrp…...

wordpress建立相册/seo关键词优化软件合作

前言&#xff1a;《深入理解JVM虚拟机》是JAVA的经典著作之一&#xff0c;因为内容更偏向底层&#xff0c;所以之前一直没有好好的阅读过。最近因为刚好有空&#xff0c;又有了新目标。所以打算和《构架师的12项修炼》一起看&#xff0c;这样荤素搭配&#xff0c;吃饭不累~ 序&…...

wordpress 添加微博关注/网站维护工作内容

科大讯飞离线语音合成简单实例 讯飞语音开发集成地址http://www.xfyun.cn/ 如何使用科大讯飞开放平台的语音合成呢&#xff1f; 1.首先要注册开发者账户, 创建我的新应用&#xff0c;创建完后就有一个专属APPID&#xff08;非常重要&#xff09;&#xff0c;添加我的应用 , 下…...

山东网站建设推广/国外免费舆情网站有哪些软件

一切都是花里胡哨&#xff0c;苦中作乐。———————————————彩色缩进———————————————效果图插件名称&#xff1a; indent-rainbow安装使用&#xff1a;搜索安装&#xff0c;无脑直接使用。———————————————自定义背景图———————…...