东莞网站推广渠道有哪些,县建设局 协会网站,点餐系统微信小程序,高仿酒网站怎么做微信公众号#xff1a;Dotnet9#xff0c;网站#xff1a;Dotnet9#xff0c;问题或建议#xff1a;请网站留言#xff0c; 如果对您有所帮助#xff1a;欢迎赞赏。.NET CORE(C#) WPF亚克力窗体阅读导航本文背景代码实现本文参考源码1. 本文背景本文介绍使用FluentWPF控… 微信公众号Dotnet9网站Dotnet9问题或建议请网站留言 如果对您有所帮助欢迎赞赏。.NET CORE(C#) WPF亚克力窗体阅读导航本文背景代码实现本文参考源码1. 本文背景本文介绍使用FluentWPF控件库实现亚克力效果的窗体。2. 代码实现使用 .Net Core 3.1 创建名为 “AcrylicWindow” 的WPF模板项目添加三个Nuget库MaterialDesignThemes、MaterialDesignColors和FluentWPF其中亚克力效果是由FluentWPF控件库实现的。以下为三个库具体版本?xml version1.0 encodingutf-8?
packagespackage idFluentWPF version0.4.0 targetFrameworknet461 /package idMaterialDesignColors version1.1.2 targetFrameworknet461 /package idMaterialDesignThemes version2.4.1.1101 targetFrameworknet461 /
/packages解决方案主要文件目录组织结构AcrylicWindow App.xamlMainWIndow.xaml MainWindow.xaml.cs2.1 引入样式文件【App.xaml】在StartupUri中设置启动的视图【MainWindow.xaml】并在【Application.Resources】节点增加MaterialDesignThemes和FluentWPF控件库的样式文件Application x:ClassAcrylicWindow.Appxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlStartupUriMainWindow.xamlApplication.ResourcesResourceDictionaryResourceDictionary.MergedDictionaries!-- FluentWPF Controls --ResourceDictionary Sourcepack://application:,,,/FluentWPF;component/Styles/Controls.xaml /!-- Material Design Controls--ResourceDictionary Sourcepack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Light.xaml /ResourceDictionary Sourcepack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml//ResourceDictionary.MergedDictionaries/ResourceDictionary/Application.Resources
/Application2.2 演示窗体布局文件【MainWindow.xaml】引入MaterialDesignThemes和FluentWPF控件库的命名空间源码如下Window x:ClassAcrylicWindow.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:materialDesignhttp://materialdesigninxaml.net/winfx/xaml/themesxmlns:dhttp://schemas.microsoft.com/expression/blend/2008xmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:mchttp://schemas.openxmlformats.org/markup-compatibility/2006xmlns:fwclr-namespace:SourceChord.FluentWPF;assemblyFluentWPFmc:Ignorabledfw:AcrylicWindow.EnabledTrue fw:AcrylicWindow.AcrylicWindowStyleNoneMouseDownWindow_MouseDown FontSize15 Height600 Width1080 WindowStyleNone AllowsTransparencyTrue ResizeModeNoResize WindowStartupLocationCenterScreenGridGrid.ColumnDefinitionsColumnDefinition Width350/ColumnDefinition Width*//Grid.ColumnDefinitionsGrid fw:PointerTracker.EnabledTrue Background#01FFFFFFStackPanelStackPanel OrientationHorizontalButton ForegroundBlack Background{x:Null} BorderBrush{x:Null}materialDesign:PackIcon KindArrowLeft//ButtonTextBlock TextSettings FontSize12 Margin10 VerticalAlignmentCenter//StackPanelListViewItem Padding0StackPanel OrientationHorizontalmaterialDesign:PackIcon KindHome Margin15/TextBlock TextHome VerticalAlignmentCenter//StackPanel/ListViewItemTextBlock TextSystem Margin15 FontWeightDemiBold/ListView FontSize15ListViewItem Padding1StackPanel OrientationHorizontalmaterialDesign:PackIcon KindMonitor Margin15/TextBlock TextVideo VerticalAlignmentCenter//StackPanel/ListViewItemListViewItem Padding1StackPanel OrientationHorizontalmaterialDesign:PackIcon KindHeadphones Margin15/TextBlock TextAudio VerticalAlignmentCenter//StackPanel/ListViewItemListViewItem Padding1StackPanel OrientationHorizontalmaterialDesign:PackIcon KindMessageOutline Margin15/TextBlock TextNotifications VerticalAlignmentCenter//StackPanel/ListViewItemListViewItem Padding1StackPanel OrientationHorizontalmaterialDesign:PackIcon KindBatteryOutline Margin15/TextBlock TextBattery VerticalAlignmentCenter//StackPanel/ListViewItem/ListView/StackPanel/GridGrid Grid.Column1 BackgroundWhite/Grid/Grid
/Window关键点说一下作者源码中隐藏标题栏使用的【fw:AcrylicWindow.ShowTitleBarFalse】站长使用 .NET CORE 3.1创建的项目提示该属性不存在遂尝试敲打出【fw:AcrylicWindow.AcrylicWindowStyleNone】属性替代效果一样的;fw:AcrylicWindow.Enabled 属性是是否启用亚克力效果的开关设置为True效果见上面演示动画设置为False效果图如下 演示窗体分为左右两部分左侧设置Grid背景色“#01FFFFFF”带有透明度才能看出亚克力效果右侧Grid背景色设置为白色方便左右对比。后台代码【MainWindow.xaml.cs】实现鼠标左键拖动窗体功能private void Window_MouseDown(object sender, MouseButtonEventArgs e)
{DragMove();
}3.本文参考视频一C# WPF Design UI: Transparent/Acrylic Window配套源码AcrylicWindow。4.源码文中代码已经全部给出可直接Copy代码按解决方案目录组织代码文件即可运行另附原作者视频及源码【见3.本文参考】、站长成功编译的Demo(点击下载-AcrylicWindow)。除非注明文章均由 Dotnet9 整理发布欢迎转载。转载请注明本文地址https://dotnet9.com/7372.html欢迎扫描下方二维码关注 Dotnet9 的微信公众号本站会及时推送最新技术文章