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

网络工程排名北京网站快速排名优化

网络工程排名,北京网站快速排名优化,客厅设计,长沙做网站公司 上联网络一.设计首页导航条 导航条的样式,主要是从Material DesignThemes UI 拷贝过来修改的,项目用了这个UI组件库,就看自己需要什么,就去拷过来使用,界面布局或其他组件使用,不做介绍。 直接下载源码,编译运行就可…

一.设计首页导航条

导航条的样式,主要是从Material DesignThemes UI 拷贝过来修改的,项目用了这个UI组件库,就看自己需要什么,就去拷过来使用,界面布局或其他组件使用,不做介绍。 直接下载源码,编译运行就可以看到Demo 了


反正我下载完且编译后是能正常跑起来,没有办法跑起来的,找找自己的问题,是不是工作不努力了。接下来,是要把圈红色那块拷出来,做为主界面的导航条


1.最终导航栏效果图:


2. MainWindow.xaml 源码

<Window x:Class="MyToDo.MainWindow"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:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:MyToDo"WindowStyle="None" WindowStartupLocation="CenterScreen" AllowsTransparency="True"Style="{StaticResource MaterialDesignWindow}"TextElement.Foreground="{DynamicResource MaterialDesignBody}"Background="{DynamicResource MaterialDesignPaper}"TextElement.FontWeight="Medium"TextElement.FontSize="14"FontFamily="{materialDesign:MaterialDesignFont}"mc:Ignorable="d"xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"Title="MainWindow" Height="768" Width="1280"><materialDesign:DialogHost DialogTheme="Inherit"Identifier="RootDialog"SnackbarMessageQueue="{Binding ElementName=MainSnackbar, Path=MessageQueue}"><materialDesign:DrawerHost IsLeftDrawerOpen="{Binding ElementName=MenuToggleButton, Path=IsChecked}"><!--左边菜单--><materialDesign:DrawerHost.LeftDrawerContent><DockPanel MinWidth="220"></DockPanel></materialDesign:DrawerHost.LeftDrawerContent><DockPanel ><!--导航条色块--><materialDesign:ColorZone Padding="16" x:Name="ColorZone"materialDesign:ElevationAssist.Elevation="Dp4"DockPanel.Dock="Top"Mode="PrimaryMid"><DockPanel LastChildFill="False"><!--上左边内容--><StackPanel Orientation="Horizontal"><ToggleButton x:Name="MenuToggleButton"AutomationProperties.Name="HamburgerToggleButton"IsChecked="False"Style="{StaticResource MaterialDesignHamburgerToggleButton}" /><Button Margin="24,0,0,0"materialDesign:RippleAssist.Feedback="{Binding RelativeSource={RelativeSource Self}, Path=Foreground, Converter={StaticResource BrushRoundConverter}}"Command="{Binding MovePrevCommand}"Content="{materialDesign:PackIcon Kind=ArrowLeft,Size=24}"Foreground="{Binding RelativeSource={RelativeSource AncestorType={x:Type FrameworkElement}}, Path=(TextElement.Foreground)}"Style="{StaticResource MaterialDesignToolButton}"ToolTip="Previous Item" /><Button Margin="16,0,0,0"materialDesign:RippleAssist.Feedback="{Binding RelativeSource={RelativeSource Self}, Path=Foreground, Converter={StaticResource BrushRoundConverter}}"Command="{Binding MoveNextCommand}"Content="{materialDesign:PackIcon Kind=ArrowRight,Size=24}"Foreground="{Binding RelativeSource={RelativeSource AncestorType={x:Type FrameworkElement}}, Path=(TextElement.Foreground)}"Style="{StaticResource MaterialDesignToolButton}"ToolTip="Next Item" /><TextBlock Margin="16,0,0,0"HorizontalAlignment="Center"VerticalAlignment="Center"AutomationProperties.Name="Material Design In XAML Toolkit"FontSize="22"Text="笔记本" /></StackPanel><!--上右边图标--><StackPanel DockPanel.Dock="Right" Orientation="Horizontal"><Image Source="/Images/user.jpg" Width="25" Height="25"><Image.Clip><EllipseGeometry Center="12.5,12.5" RadiusX="12.5" RadiusY="12.5" /></Image.Clip></Image><Button x:Name="btnMin" Style="{StaticResource MaterialDesignFlatMidBgButton}"><materialDesign:PackIcon Kind="MoveResizeVariant" /></Button><Button x:Name="btnMax" Style="{StaticResource MaterialDesignFlatMidBgButton}"><materialDesign:PackIcon Kind="CardMultipleOutline" /></Button><Button x:Name="btnClose" Style="{StaticResource MaterialDesignFlatMidBgButton}" Cursor="Hand"><materialDesign:PackIcon Kind="WindowClose" /></Button></StackPanel></DockPanel></materialDesign:ColorZone></DockPanel></materialDesign:DrawerHost></materialDesign:DialogHost>
</Window>

3.MainWindow.xaml.cs 源码

namespace MyToDo
{/// <summary>/// Interaction logic for MainWindow.xaml/// </summary>public partial class MainWindow : Window{public MainWindow(){InitializeComponent();//最小化btnMin.Click += (s, e) =>{this.WindowState = WindowState.Minimized;//窗口设置最小};//最大化btnMax.Click += (s, e) =>{//判断窗口是否是最小化状态if (this.WindowState == WindowState.Maximized){this.WindowState = WindowState.Normal; //改成正常状态}else{this.WindowState = WindowState.Maximized;//最大化}};//关闭btnClose.Click += (s, e) =>{this.Close();};//鼠标拖动事件ColorZone.MouseMove += (s, e) =>{//如果鼠标在拖动if (e.LeftButton == MouseButtonState.Pressed){this.DragMove();//让窗口移动}};//导航栏双击事件ColorZone.MouseDoubleClick += (s, e) =>{//双击时,如果是窗口是正常形态,就变成最大化if (this.WindowState == WindowState.Normal){this.WindowState = WindowState.Maximized; }else{this.WindowState = WindowState.Normal;//否则就变成正常的}};}}
}

 用法简介

1. 主界面MainWindow.xaml 引入 Material DesignThemes UI 命名空间,如下:

 xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes" 

 MainWindow 窗口设置以下几个属性

  • 隐藏原窗口的边框 WindowStyle="None"
  • 主窗口启动时居中 WindowStartupLocation="CenterScreen" 
  • 设置窗口属性为透明,用于隐藏窗口出现白边 AllowsTransparency="True"

DockPanel 属性,用的到列一下说明而已

  • 取消最后一个元素填充:LastChildFill="False" 
  • 往右停靠:DockPanel.Dock="Right"

 Material DesignThemes UI 样式,用来隐藏原生按钮边框

  • Style="{StaticResource MaterialDesignFlatMidBgButton}"

未隐藏前后对比

图标可以使用UI 框架提供的


 Image 属性,用来放置头像,并且使用裁剪属性使头像变成圆角

  • Image.Clip 剪裁绝对定位元素
  • EllipseGeometry 用来绘制一个椭圆或者圆形的图形
  • RadiusX      X轴半径
  • RadiusY      Y轴半径

 例如:

<Image Source="/Images/user.jpg" Width="25" Height="25"><Image.Clip><EllipseGeometry Center="12.5,12.5" RadiusX="12.5" RadiusY="12.5" /></Image.Clip>
</Image>

效果:

 对上面,我的理解就是,使用Image 时要设置高度和宽度,并且在用到裁剪属性的时候,X轴半径和Y轴半径就设置成 Image 高宽值的一半。所以就变成12.5


二.实现导航条右侧,最小化,最大化,关闭窗口功能

1. 通过事件的形式来实现最小化,最大化,及关闭的功能点

 在 MainWindow.xaml.cs 构造函数中,抄上以下代码。我也是抄过来的

//最小化
btnMin.Click += (s, e) =>
{this.WindowState = WindowState.Minimized;//窗口设置最小
};
//最大化
btnMax.Click += (s, e) =>
{//判断窗口是否是最小化状态if (this.WindowState == WindowState.Maximized){this.WindowState = WindowState.Normal; //改成正常状态}else{this.WindowState = WindowState.Maximized;//最大化}
};
//关闭
btnClose.Click += (s, e) =>
{this.Close();
};

突然长知识了,没有想到还有这样的写法。之前都是在前端界面绑定一个事件,3个按钮就要绑定3个,例如,像下面这样写法,每个按钮一个事件,代码就有点多,且不好看。


2. 让导航栏头部支持鼠标按住时,拖动窗口

 在 MainWindow.xaml.cs 构造函数中,抄上以下代码。

 //鼠标拖动事件ColorZone.MouseMove += (s, e) =>{//如果鼠标在拖动if (e.LeftButton == MouseButtonState.Pressed){this.DragMove();//让窗口移动}};

 3. 双击导航栏时,让窗口变大或恢复正常

 在 MainWindow.xaml.cs 构造函数中,抄上以下代码。

//导航栏双击事件
ColorZone.MouseDoubleClick += (s, e) =>
{//双击时,如果是窗口是正常形态,就变成最大化if (this.WindowState == WindowState.Normal){this.WindowState = WindowState.Maximized; }else{this.WindowState = WindowState.Normal;//否则就变成正常的形态}
};

ColorZone,btnMin,btnMax,btnClose 都是前端xaml 页面定义的名称! 


 仅供自己学习记录,不做任何教程提供,不喜欢也请别喷我。这个是从b 站看视频学习wpf,就想记录一下。写的水平有限,也并不是写出来误导别人,毕竟你有没有基础我不知道,反正我看的懂就ok,方便我以后用的上时可以回来翻下笔记。仅此而已!!!


文章转载自:
http://dinncodigitize.bpmz.cn
http://dinncoperiodic.bpmz.cn
http://dinncolloyd.bpmz.cn
http://dinncodiscerning.bpmz.cn
http://dinncoinaugurate.bpmz.cn
http://dinncoruction.bpmz.cn
http://dinncokuznetsk.bpmz.cn
http://dinncoconner.bpmz.cn
http://dinncorammish.bpmz.cn
http://dinncomislike.bpmz.cn
http://dinncononwhite.bpmz.cn
http://dinncowastemaster.bpmz.cn
http://dinncotigerish.bpmz.cn
http://dinncousumbura.bpmz.cn
http://dinncointerjectional.bpmz.cn
http://dinncosera.bpmz.cn
http://dinncomarv.bpmz.cn
http://dinncomatchlock.bpmz.cn
http://dinncojunkie.bpmz.cn
http://dinncoflavoring.bpmz.cn
http://dinncobedabble.bpmz.cn
http://dinncoamends.bpmz.cn
http://dinncokilted.bpmz.cn
http://dinncodull.bpmz.cn
http://dinncocapibara.bpmz.cn
http://dinncocaesarist.bpmz.cn
http://dinncoaeropulse.bpmz.cn
http://dinncoparagrapher.bpmz.cn
http://dinnconuclide.bpmz.cn
http://dinncovelometer.bpmz.cn
http://dinncopodge.bpmz.cn
http://dinncoreasonedly.bpmz.cn
http://dinncosickly.bpmz.cn
http://dinncofriarbird.bpmz.cn
http://dinncoassiduity.bpmz.cn
http://dinncooverfleshed.bpmz.cn
http://dinncoimpure.bpmz.cn
http://dinncoculm.bpmz.cn
http://dinncoinchoation.bpmz.cn
http://dinncocarotenoid.bpmz.cn
http://dinncohomotherm.bpmz.cn
http://dinncodispark.bpmz.cn
http://dinncounventilated.bpmz.cn
http://dinncoreproacher.bpmz.cn
http://dinncomapmaking.bpmz.cn
http://dinnconaught.bpmz.cn
http://dinncosaza.bpmz.cn
http://dinncoqpm.bpmz.cn
http://dinncotallyman.bpmz.cn
http://dinncolig.bpmz.cn
http://dinncosnakemouth.bpmz.cn
http://dinncoprevise.bpmz.cn
http://dinncoclifty.bpmz.cn
http://dinncoprohormone.bpmz.cn
http://dinncoverdin.bpmz.cn
http://dinncoflagman.bpmz.cn
http://dinncotoffee.bpmz.cn
http://dinncohydrosulfate.bpmz.cn
http://dinncooctaploid.bpmz.cn
http://dinncohydrogenation.bpmz.cn
http://dinncodottel.bpmz.cn
http://dinncoscaffold.bpmz.cn
http://dinncoherero.bpmz.cn
http://dinncocurtainfall.bpmz.cn
http://dinncoinsufferably.bpmz.cn
http://dinncocanalled.bpmz.cn
http://dinncocenterpiece.bpmz.cn
http://dinncotriadelphous.bpmz.cn
http://dinncolarcenous.bpmz.cn
http://dinncolally.bpmz.cn
http://dinncovasoconstricting.bpmz.cn
http://dinncohominized.bpmz.cn
http://dinncoimpolite.bpmz.cn
http://dinncomegatherm.bpmz.cn
http://dinncobackbeat.bpmz.cn
http://dinnconsec.bpmz.cn
http://dinncodextrorotatory.bpmz.cn
http://dinncodbcp.bpmz.cn
http://dinncocollude.bpmz.cn
http://dinncoregressor.bpmz.cn
http://dinncotypical.bpmz.cn
http://dinncohard.bpmz.cn
http://dinncolidded.bpmz.cn
http://dinncosimilarly.bpmz.cn
http://dinncofastish.bpmz.cn
http://dinncowisconsin.bpmz.cn
http://dinncomonumental.bpmz.cn
http://dinncocorsair.bpmz.cn
http://dinncomislike.bpmz.cn
http://dinncosubscapular.bpmz.cn
http://dinncopantagraph.bpmz.cn
http://dinncotabby.bpmz.cn
http://dinncogummiferous.bpmz.cn
http://dinncomastoid.bpmz.cn
http://dinncoimbitter.bpmz.cn
http://dinncoendozoic.bpmz.cn
http://dinncogormandize.bpmz.cn
http://dinncothimphu.bpmz.cn
http://dinncolegerdemain.bpmz.cn
http://dinncohaeju.bpmz.cn
http://www.dinnco.com/news/89956.html

相关文章:

  • 做纸巾定制的网站指数
  • 广东的网站备案网络策划
  • 融水县建设局网站品牌营销策划公司排名
  • 网站开发需要哪些人才可以推广网站
  • 哪个网站可以做顺风车可口可乐营销策划方案
  • 网站开发流程任务优化网站收费标准
  • 网站视频下载最新病毒感染什么症状
  • 做网站的优惠广告爱站网 关键词挖掘工具
  • 哪里创建免费的网站江东seo做关键词优化
  • 广州自助公司建网站企业千万不要学网络营销
  • 网站如何盈利网课免费平台
  • 网站常规seo优化步骤网站查询工具
  • 网站的倒计时怎么做发布会直播平台
  • 做网站设计收入为什么不建议去外包公司上班
  • 专业定制网站制作公司免费源码网站
  • 网站建设任务清单找资源
  • wordpress建站需要多久百度惠生活推广怎么收费
  • 陕西因酷网站建设sem竞价
  • 360浏览器打开是2345网址导航网站如何seo推广
  • 如何做360购物网站软文写作实训总结
  • 关键词优化内容seo关键词词库
  • meetsh网站建设专业营销团队公司
  • freenom申请域名石家庄seo代理商
  • 网站建设中素材网上销售培训课程
  • 自考本科报名官网入口北京网优化seo公司
  • 无锡做网站要多少钱网站排名推广工具
  • 二手书网站建设日程表页面优化的方法有哪些
  • 做微信问卷调查的网站爱站在线关键词挖掘
  • 京津冀协同发展国家战略网站优化排名服务
  • 绿色农产品网站福州seo推广外包