• 一个Metro风格的开源项目 MahApps.Metro


    目录:

    Metro风格控件

    Metro主题

    MahApps.Metro文档地址:http://mahapps.com/MahApps.Metro/

    源码地址:https://github.com/MahApps/MahApps.Metro

    在VS中可以装一个NuGet插件来下载MahApps.Metro.dll和MahApps.Metro.Resources.dll。

    MahApps.Metro文档写的很详细了。可以先了解下如何使用。在往下看这篇文章。

    文档也给出了一些Examples:

    Metro风格控件

    MahApps.Metro大概有16个自定义控件。

    image

    1、AppBarButton继承Button,在Button上增加了Visual类的属性。用来改变可视化界面。

    2、LayoutInvalidationCatcher在逻辑树中测绘Child所需的空间。

    3、MetroContentControl这个控件主要是在TabControl切换的时候,给它一些切换的动画。同时必须配合ReloadBehavior.OnSelectedTabChanged这个附加属性。

    4、MetroImage这个AppBarButton类似,只是模板Style不同。

    5、MetroProgressBar继承ProgressBar,也就是对进度条模板重写。加了动画,类似于Loading效果。

    6、Panorama继承于ItemsControl,设置Item的高度,宽度还有动画效果。

    7、PanoramaItem是一个继承于ContentControl自定义控件,他增加了header,HeaderOpacity,HeaderTemplate,Orientation的依赖属性。

    8、Planerator控制子控件的旋转。

    9、ProgressIndicator和MetroProgressBar类似,效果图image,也是一种加载动画控件。ProgressIndicator主要是以xaml来写的,而MetroProgressBar主要是以代码来写的。

    10、ProgressRing和上面的类似image

    11、RevealImage给ImageSource增加些鼠标移动到上面的动画效果。

    12、Title 继承于Button,多了几个依赖属性(Title,Count,KeepDragging,TitleFactor)

    13、ToggleSwitch继承于ToggleButton,image

    14、ToggleSwitchButton和ToggleSwitch类似image主要实现这种开关效果。

    15、TransitioningContentControl控件内容动态出现和消失。

    16、WindowCommands实现了窗体的最小化,还原,最大化,关闭功能。就是Window窗体上面的边框。这里文档上也写到不能自动绑定Caliburn.Macro的事件命令。必须写cal:Message.Attach来绑定。x:Name自动绑定的写法失效了。

    Metro主题

    ThemeManager这个类,来改变主题风格。源码里面有白色和黑色两套背景主题(BaseLight.xaml和BaseDark.xaml)

    通过ThemeManager.ChangeTheme改变主题颜色。


    作者:dingli
    出处:http://www.cnblogs.com/dingli/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    python 类
    hdu 5761 Rowe Bo 微分方程
    calendar 示例
    hdu 5753 Permutation Bo
    hdu 5752 Sqrt Bo
    finally 语句
    throws 和 throw
    python打开.pkl的文件并显示里面的内容
    Python 类变量,成员变量,静态变量,局部变量
    python 实例方法,类方法,静态方法,普通函数
  • 原文地址:https://www.cnblogs.com/dingli/p/2524172.html
Copyright © 2020-2023  润新知