news 2026/8/31 18:29:29

wpf ToggleButton实现控制UI组件宽度,展开或收缩

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
wpf ToggleButton实现控制UI组件宽度,展开或收缩

点击按钮控制左侧版块宽度,展开或收缩

样式设置

<UserControl.Resources><PathGeometry x:Key="PathGeometry_Right"Figures="M514 114.3c-219.9 0-398.8 178.9-398.8 398.8 0 220 178.9 398.9 398.8 398.9s398.8-178.9 398.8-398.9c0-219.8-178.9-398.8-398.8-398.8z m152.9 440.4L502.8 718.8c-22.9 22.9-60.2 22.9-83.1 0-11.5-11.5-17.2-26.5-17.2-41.5s5.7-30.1 17.2-41.5l122.6-122.6-122.6-122.6c-22.9-22.9-22.9-60.2 0-83.1 22.9-22.9 60.2-22.9 83.1 0l164.1 164.1c23 23 23 60.2 0 83.1z"/><ControlTemplate x:Key="ToggleButton_expand"TargetType="ToggleButton"><GridBackground="Transparent"Cursor="Hand"RenderTransformOrigin="0.5,0.5"><Grid.RenderTransform><RotateTransform x:Name="Rotate"Angle="180"/></Grid.RenderTransform><PathData="{StaticResource PathGeometry_Right}"Fill="{StaticResource DefaultButtonMouseDown}"Stretch="Uniform"/></Grid><ControlTemplate.Triggers><TriggerProperty="IsChecked"Value="True"><Trigger.EnterActions><BeginStoryboard><Storyboard><DoubleAnimationUsingKeyFramesStoryboard.TargetName="Rotate"Storyboard.TargetProperty="Angle"><DoubleAnimationUsingKeyFrames.KeyFrames><LinearDoubleKeyFrameKeyTime="0:0:0.1"Value="180"/></DoubleAnimationUsingKeyFrames.KeyFrames></DoubleAnimationUsingKeyFrames></Storyboard></BeginStoryboard></Trigger.EnterActions><Trigger.ExitActions><BeginStoryboard><Storyboard><DoubleAnimationUsingKeyFramesStoryboard.TargetName="Rotate"Storyboard.TargetProperty="Angle"><DoubleAnimationUsingKeyFrames.KeyFrames><LinearDoubleKeyFrameKeyTime="0:0:0.1"Value="0"/></DoubleAnimationUsingKeyFrames.KeyFrames></DoubleAnimationUsingKeyFrames></Storyboard></BeginStoryboard></Trigger.ExitActions></Trigger></ControlTemplate.Triggers></ControlTemplate><Storyboard x:Key="Storyboard_Show"><DoubleAnimationUsingKeyFramesStoryboard.TargetName="leftContent"Storyboard.TargetProperty="Width"><DoubleAnimationUsingKeyFrames.KeyFrames><LinearDoubleKeyFrameKeyTime="0:0:0.1"Value="NaN"/></DoubleAnimationUsingKeyFrames.KeyFrames></DoubleAnimationUsingKeyFrames></Storyboard><Storyboard x:Key="Storyboard_Hidden"><DoubleAnimationUsingKeyFramesStoryboard.TargetName="leftContent"Storyboard.TargetProperty="Width"><DoubleAnimationUsingKeyFrames.KeyFrames><LinearDoubleKeyFrameKeyTime="0:0:0.1"Value="60"/></DoubleAnimationUsingKeyFrames.KeyFrames></DoubleAnimationUsingKeyFrames></Storyboard></UserControl.Resources>

控制宽度按钮

<ToggleButtonWidth="25"Height="35"Margin="-5,7,0,0"HorizontalAlignment="Left"VerticalAlignment="Top"Panel.ZIndex="77"Background="Red"Command="{Binding QueryPersonnelCommand}"CommandParameter="{Binding IsChecked, RelativeSource={RelativeSource Mode=Self}}"IsChecked="True"Template="{StaticResource ToggleButton_expand}"><ToggleButton.Triggers><EventTriggerRoutedEvent="ToggleButton.Checked"><BeginStoryboardStoryboard="{StaticResource Storyboard_Show}"/></EventTrigger><EventTriggerRoutedEvent="ToggleButton.Unchecked"><BeginStoryboardStoryboard="{StaticResource Storyboard_Hidden}"/></EventTrigger></ToggleButton.Triggers></ToggleButton>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 17:10:07

【雷达导弹导引头原理】 第二章 (四)目标探测区

目录 目标探测区 P-18雷达特性 米波雷达的优势 米波与分米波雷达的组合使用 PRV-13无线电高度计特性 PRV-13分辨率参数 系统集成效果 目标探测区 防空导弹系统的探测区是指这样一个空间区域:在该区域内,能够以不低于给定概率的最大距离,从防空导弹系统部署点探测到潜…

作者头像 李华
网站建设 2026/8/27 14:38:25

KIHU 快狐|触摸落地广告机 展览馆展品信息深度查询

[KIHU 快狐]触摸落地广告机在展览馆的独特应用在现代展览馆中&#xff0c;信息的高效传递和深度展示至关重要。[KIHU 快狐]触摸落地广告机凭借先进的技术应运而生&#xff0c;为展品信息深度查询提供了绝佳的解决方案。[KIHU 快狐]触摸落地广告机拥有高清晰度的显示屏&#xff…

作者头像 李华
网站建设 2026/8/28 14:06:09

计算机毕业设计之基于springBoot的村镇快递超市库存管理系统设计与实现

二十一世纪我们的社会进入了信息时代&#xff0c;信息管理系统的建立&#xff0c;大大提高了人们信息化水平。传统的管理方式对时间、地点的限制太多&#xff0c;而在线管理系统刚好能满足这些需求&#xff0c;在线管理系统突破了传统管理方式的局限性。于是本文针对这一需求设…

作者头像 李华
网站建设 2026/8/31 8:53:07

[.NET] Aspire Dashboard: 云原生可观测性

颗嚷佑妹类型/构造 描述 主要用途 注意事项 值元组 (Value Tuples) 轻量级值类型&#xff0c;支持多值返回、命名元素和解构 方法返回多个值、临时数据分组 值类型&#xff0c;栈分配&#xff1b;.NET Framework需引用System.ValueTuple包 概述 值元组基于System.ValueTuple&am…

作者头像 李华
网站建设 2026/8/27 8:41:01

开源Java文件上传组件如何扩展JSP实现多文件拖拽上传?

大文件传输系统建设方案&#xff08;项目负责人视角&#xff09; 一、项目背景与需求分析 作为河北XX软件公司项目负责人&#xff0c;针对产品部门提出的大文件传输需求&#xff0c;经过详细技术调研和业务分析&#xff0c;现提出以下系统性解决方案。该需求涉及100G级文件传…

作者头像 李华