WPF 引用MaterialDesignThemes.Wpf实现按钮外观样式的优化

53 篇文章 3 订阅

1、首先安装,如下所示
在这里插入图片描述
在这里插入图片描述
2、资源字典的引用
安装好之后,还要进行样式的引用,如下所示
在这里插入图片描述
在这里插入图片描述
最后新建一个button按钮,即可看到效果如下所示:
在这里插入图片描述
ResourceDictionary.MergedDictionaries 属性
参考

定义
命名空间:
System.Windows
程序集:
PresentationFramework.dll
获取 ResourceDictionary 字典的集合,这些字典构成了合并字典中的各种资源字典。

C#

复制
public System.Collections.ObjectModel.Collection<System.Windows.ResourceDictionary> MergedDictionaries { get; }
属性值
Collection
合并的字典的集合。

示例
以下示例指定要合并到主ResourceDictionary元素中的两ResourceDictionary个元素。

XAML

复制
<Page.Resources>

<ResourceDictionary.MergedDictionaries>


</ResourceDictionary.MergedDictionaries>

</Page.Resources>
注解
字典通过向引用的MergedDictionaries泛型集合添加 a ResourceDictionary 来合并。 合并 ResourceDictionary 后没有在标记中定义的资源元素。 相反,合并字典是一个 ResourceDictionary 没有定义标记子元素 (或没有通过代码) 添加的元素,但具有指定的 SourceURI。 该 Source 指定使合并字典能够来自外部源,例如随应用程序附带的单独资源程序集、“松散 XAML”或特定本地化或全局资源程序集。

不支持在指定的Source资源元素内ResourceDictionary指定资源元素。

集合中的 MergedDictionaries 查找行为将首先搜索最后添加 ResourceDictionary 的项,搜索会在找到请求的密钥后立即停止。 合并字典集合中的重复键不是非法的。 有关合并字典行为的详细信息,请参阅 合并的资源字典。

XAML 属性元素用法

复制

<object.MergedDictionaries>
oneOrMoreResourceDictionaries
</object.MergedDictionaries>

XAML 值
oneOrMoreResourceDictionaries
一个或多个 ResourceDictionary 对象元素。 ResourceDictionary用于MergedDictionaries不具有集合内容,并指定一个Source远程引用完整ResourceDictionary属性。

适用于
产品 版本
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
Windows Desktop 3.0, 3.1, 5, 6, 7 Preview 7

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
根据提供的引用内容,实现WPF HelixToolkit.Wpf.SharpDX前后端点云效果的步骤如下: 1. 首先下载源码https://github.com/helix-toolkit/helix-toolkit,并打开source文件夹中的Example/WPF.SharpDX/FileLoadDemo.csproj文件。 2. 在VS中打开FileLoadDemo.csproj文件后,需要添加引用。右键Solution Explorer中的References,选择Manage Nuget Packages。在Browse中搜索Helix3DToolkit.Wpf.SharpDX和SharpDX并安装。 3. 在MainWindow.xaml中添加HelixViewport3D控件,用于显示点云效果。 4. 在MainWindow.xaml.cs中添加以下代码,用于加载点云数据: ```csharp private void LoadPointCloud() { var reader = new StreamReader("pointcloud.xyz"); var positions = new List<Vector3>(); while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split(' '); var x = float.Parse(values[0], CultureInfo.InvariantCulture); var y = float.Parse(values[1], CultureInfo.InvariantCulture); var z = float.Parse(values[2], CultureInfo.InvariantCulture); positions.Add(new Vector3(x, y, z)); } reader.Close(); var builder = new MeshBuilder(); builder.AddPointCloud(positions, Colors.Red, 2); var meshGeometry = builder.ToMesh(); var geometryModel = new GeometryModel3D(meshGeometry, Materials.Red); var modelGroup = new Model3DGroup(); modelGroup.Children.Add(geometryModel); var visual3D = new ModelVisual3D(); visual3D.Content = modelGroup; viewport.Children.Add(visual3D); } ``` 该代码将从文件pointcloud.xyz中读取点云数据,并将其添加到HelixViewport3D控件中。 5. 在MainWindow.xaml.cs的构造函数中调用LoadPointCloud()方法,以加载点云数据。 ```csharp public MainWindow() { InitializeComponent(); LoadPointCloud(); } ``` 6. 运行程序,即可在HelixViewport3D控件中看到点云效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

光怪陆离的节日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值