wpf listview 添加控件_C# WPF抽屉效果实现

本文展示了如何在WPF中实现类似UWP SplitView的抽屉效果,利用MaterialDesignInXaml开源库。通过添加相关Nuget包并编写简单代码,创建了一个包含标题栏菜单和抽屉菜单的窗口。提供了详细代码实现和YouTube教程参考链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

时间如流水,只能流去不流回!

点赞再看,养成习惯,这是您给我创作的动力!

本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform、WPF、ASP.NET Core等,亦有C++桌面相关的Qt Quick和Qt Widgets等,只分享自己熟悉的、自己会的。

一、先看效果:

26722c9c300b4f3ead655c62b6b894fb

效果展示

二、本文背景

有网友给站长Dotnet9留言:“WPF中能否实现UWP中SplitView效果,即抽屉效果吗?” Dotnet9记得国外开源C# WPF控件库MaterialDesignInXaml中有这种效果,可以查看本站写的推荐文章:MaterialDesignInXaml控件介绍,站长也是个喜欢码砖的人,对代码是很感兴趣的,遂Google了一个YouTube视频敲出本文实现的代码,希望对他和您有用。

三、代码实现

站长使用.Net Core 3.1创建的WPF工程,创建PopUpAndNav解决方案后,需要添加两个Nuget库:MaterialDesignThemes和MaterialDesignColors。

761e14dc208248438edace1c24cb78f3

添加Material两个库

工程比较简单,主要就是演示窗口MainWindow:

5d81062bcc484248b38287aac8e16731

解决方案结构

代码不多,我就全部贴上代码吧。

添加MaterialDesignInXaml样式:App.xaml

            

演示窗口MainWindow.xaml代码,使用简单的自定义窗口,看效果图,有右上角的标题栏菜单及左上角的抽屉菜单:

                                                                                                                                                                                

后台MainWindow.xaml.cs,主要是处理窗体关闭事件及抽屉菜单的展开与折叠:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;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 PopUpAndNav{    ///     /// Interaction logic for MainWindow.xaml    ///     public partial class MainWindow : Window    {        public MainWindow()        {            InitializeComponent();        }        private void ButtonPopUpLogout_Click(object sender, RoutedEventArgs e)        {            Application.Current.Shutdown();        }        private void ButtonOpenMenu_Click(object sender, RoutedEventArgs e)        {            ButtonOpenMenu.Visibility = Visibility.Collapsed;            ButtonCloseMenu.Visibility = Visibility.Visible;        }        private void ButtonCloseMenu_Click(object sender, RoutedEventArgs e)        {            ButtonOpenMenu.Visibility = Visibility.Visible;            ButtonCloseMenu.Visibility = Visibility.Collapsed;        }                private void GridTitle_MouseDown(object sender, MouseButtonEventArgs e)        {            DragMove();        }    }}

四、文章参考

上面的代码是Dotnet9看 Disign com WPF 大神视频手敲的,下面是大神youtube地址及本实例学习视频。

参考:
Design com WPF : https://www.youtube.com/watch?v=YQ1EJJZBHyE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值