PanuonUI.Silver是国内优秀的WPF开源控件库,Panuon.UI的优化版本。一个漂亮的、使用样式与附加属性的WPF UI控件库,值得向大家推荐使用与学习。
GitHub地址:https://github.com/Panuon/PanuonUI.Silver
码云地址: https://gitee.com/panuon/PanuonUI.Silver
中文学习文档:
中文文档:
https://github.com/Panuon/Panuon.Documents/blob/master/Documents/PanuonUI.Silver/zh-cn.md
欢迎使用
PanuonUI.Silver是一个可以高度自定义控件样式的Modern风格WPF控件库,其绝大多数控件都遵循了MVVM设计原则。PanuonUI.Silver的意义在于,你只需更改几个属性值,或调用一些方法,就可以轻松DIY出属于你自己风格的UI界面,而无需深入了解Style的写法,或是Trigger等属性的用法。
PanuonUI.Silver不像DevExpress等控件库那样,通过简单的拖拖拽拽和点击,就能快速生成带有丰富色彩、统一风格的UI界面。虽然PanuonUI.Silver提供了一组默认的样式,但这些样式可能不能满足你的日常需求。UIBrowser中提供了“调色板”功能,你可以用它来快速设计、调整你的控件样式,并获取其代码。只需下载GitHub项目并用Visual Studio打开,你就能找到它。
要最大化利用PanuonUI.Silver控件库的优势,你需要具有一定的审美能力,或者拥有一张现成的设计图。
使用指引
STEP 1. 将PanuonUI.Silver引入到你的项目中
以Nuget形式
右击你的个人项目,选择“管理Nuget程序包”。在包管理器页面中,点击“浏览”选项,然后在搜索框中键入“Panuon.UI.Silver”。选择最顶端的正确项目,并在右侧详情页中点击“安装”,等待安装完成即可。以dll形式
在你项目的根文件夹内创建一个名为“References”(当然其他的名字也可以)的文件夹。下载GitHub上的Zip文件并解压后,将解压文件夹目录下“Output/NET40”(若你的项目使用.NET4.5及以上框架,则为“Output/NET45”)文件夹内的所有dll文件拷贝到刚刚创建的文件夹中。切换到Visual Studio,在你项目下的“引用”条目上右击,并选择“添加引用”。点击右下角的“浏览”按钮,并导航到刚刚创建的References文件夹内。全选刚刚复制的dll文件,并点击“添加”按钮,然后再点击“确定”。以项目形式
下载GitHub Zip文件并解压后,将解压文件夹目录下“Net40”(若你的项目使用.NET4.5及以上框架,则为“Net45”)文件夹内的“Panuon.UI.Silver”文件夹拷贝到你项目的根目录(或根目录内的子文件夹)中。切换到Visual Studio,右击你的解决方案,点击“添加” -> “现有项目”,定位到刚刚复制的Panuon.UI.Silver文件夹内,选择“Panuon.UI.Silver.csproj”,并点击“确定”按钮。
在你要使用PanuonUI.Silver的项目下的“引用”条目上右击,并选择“添加引用”。选择“项目”选项卡,勾选“Panuon.UI.Silver”项目,并点击“确定”。
若项目使用.NET4.0及以下版本,必须在用于启动的应用程序主项目中安装“Microsoft.Windows.Shell”的Nuget包,或是直接添加对Microsoft.Windows.Shell.dll的引用。
STEP 2. 添加资源字典
打开你应用程序项目中的“App.xaml”,在<Application.Resources>节点内添加如下内容
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Panuon.UI.Silver;component/Control.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
这将使Panuon.UI.Silver样式应用到整个程序。若你只希望在特定页面或控件中使用Panuon.UI.Silver样式,请将上述资源字典放置在特定页面或控件的Resources节点内,而不是App.xaml中。
STEP 3. 在代码中使用PanuonUI.Silver
要在页面或控件中使用Panuon.UI.Silver,首先要在目标页面中添加命名空间引用。
对于xaml代码,需要添加引用:
xmlns:pu="clr-namespace:Panuon.UI.Silver;assembly=Panuon.UI.Silver"
以WindowX为例,添加pu命名空间引用后的WindowX如下:
<pu:WindowX ...
xmlns:pu="clr-namespace:Panuon.UI.Silver;assembly=Panuon.UI.Silver"
...>
<Grid>
<Button x:Name="BtnTest"
pu:ButtonHelper.ButtonStyle="Link"
pu:ButtonHelper.CornerRadius="15"
Height="30"
Width="150"/>
</Gird>
</pu:WindowX>
对于C#代码,需要添加引用:
using Panuon.UI.Silver;