当前位置:网站首页>win10 uwp 自定义控件 SplitViewItem
win10 uwp 自定义控件 SplitViewItem
2022-08-09 16:53:00 【林德熙】
本文主要是因为汉堡菜单里面列出的菜单很多重复的图标和文字,我把它作为控件,因为是随便写,可能存在错误,如果发现了,请和我说或关掉浏览器,请不要发不良言论。
我们使用汉堡菜单,经常需要一个
需要一个图标和一个文字
我开始写一个TextBlock做图标,一个写文字
<ListViewItem.Content>
<StackPanel Orientation="Horizontal">
<TextBlock Margin="10,10,10,10" FontFamily="Segoe MDL2 Assets"
Text=""></TextBlock>
<TextBlock Margin="10,10,10,10" Text="登录"></TextBlock>
</StackPanel>
</ListViewItem.Content>
因为需要写3个地方是不一样,一个是文字、一个图标还有一次复制,我觉得复制不好,因为我还有很多软件,如果每个都这样,那么在TextBlock使用
很多都是一样的
一个方法是自己创建控件,我们右击View文件夹添加控件
在控件写两个TextBlock,一个做图标,一个写文字
<Grid>
<StackPanel Orientation="Horizontal">
<TextBlock Margin="10,10,10,10" FontFamily="Segoe MDL2 Assets"
Text="{x:Bind IconString}"></TextBlock>
<TextBlock Margin="10,10,10,10" Text="{x:Bind Text}"></TextBlock>
</StackPanel>
</Grid>
然后在SplitViewItem.xaml.cs
属性IconString,Text
public static readonly DependencyProperty IconStringProperty = DependencyProperty.Register(
"IconString", typeof(string), typeof(SplitViewItem), new PropertyMetadata(default(string)));
public string IconString
{
set
{
SetValue(IconStringProperty, value);
}
get
{
return (string) GetValue(IconStringProperty);
}
}
public static readonly DependencyProperty TextProperty = DependencyProperty.Register(
"Text", typeof(string), typeof(SplitViewItem), new PropertyMetadata(default(string)));
public string Text
{
set
{
SetValue(TextProperty, value);
}
get
{
return (string) GetValue(TextProperty);
}
}
我把SplitViewItem扔View文件夹,在命名空间使用EncryptionSyncFolder.View
` xmlns:view=”using:EncryptionSyncFolder.View”`
本来需要很长的代码,现在修改成为一点点,其实就是导入我的自定义控件,首先在上面的代码是把view用作我的控件所在文件夹,反人类的Segoe MDL2 Assets 可以在http://modernicons.io/segoe-mdl2/cheatsheet/,找到你要的图标
<ListViewItem>
<ListViewItem.Content>
<Grid>
<view:SplitViewItem IconString="" Text="设置"></view:SplitViewItem>
</Grid>
</ListViewItem.Content>
</ListViewItem>
SplitView 从右划出
修改PanelPlacement。
边栏推荐
猜你喜欢
WinForm(四)一种实现登录的方式
uniapp电影购票选座系统源码
EPIC是什么平台?
在 C# 中如何检查参数是否为 null
Redis 定长队列的探索和实践
Detailed explanation of JVM memory model and structure (five model diagrams)
.NET MAUI 跨平台应用开发 I|.NET MAUI 跨平台基础
[SUCTF 2019]CheckIn
.NET 6 study notes (4) - Solve the Nullable warning in VS2022
【.NET 6】开发minimal api以及依赖注入的实现和代码演示
随机推荐
JVM内存模型和结构详解(五大模型图解)
Smart Tool Management System
Account opening requirements and exemptions for special futures such as crude oil
进行知识管理的好处有哪些?
【ROS2原理9】 QoS - 截止日期、活跃度和寿命
艺术与科技的狂欢,云端XR支撑阿那亚2022砂之盒沉浸艺术季
微软 .NET Core 3.1 年底将结束支持,请升级到.NET 6
.NET 6 study notes (4) - Solve the Nullable warning in VS2022
以技术御风险,护航云原生 | 同创永益 X 博云举办产品联合发布会
太细了!阿里大佬耗时39天整理出一份Redis进阶笔记,满满的干货
Apache Doris Community PMC Yang Zhengguo: How do open source projects strike a balance between their own and the community's needs?
Logic unauthorized and horizontal and vertical unauthorized payment tampering, verification code bypass, interface
What is control board custom development?
The difference between approach and method
方舟单机/管理员特殊物品指令代码大全
[Pycharm easy to use function]
Tan Zhongyi: Do you know who the "Queen of Open Source" is?
基于ABP和Magicodes实现Excel导出操作
[SUCTF 2019]CheckIn
crm系统哪家好?好用的crm管理系统推荐