DotNetBar的SlidePanel和metroTilePanel使用笔记

一、前言

界面组件DotNetBar2中的2个控件属性SlidePanel和metroTitlePanel的使用方法,网上相关资源较少,就一些属性的使用学习记录如下:
SlideSide=DevComponents.DotNetBar.Controls.eSlideSide.Top/Bottom/Right/Left

metroTilePanel和metroTileItem,TitleText,TitleStyle的属性设置及样式控制

二、属性设置

在这里插入图片描述

2.1 SlideSide

sPanel.SlideSide = DevComponents.DotNetBar.Controls.eSlideSide.Top
sPanel.SlideSide = DevComponents.DotNetBar.Controls.eSlideSide.Bottom

2.2 TitleText,TitleTextAlignment,TitleStyle

TitleText
选中,图标,文本,角标
在这里插入图片描述
TitleStyle

2.3 TitleTextAlignment有9种位置控制(LT,TC,TR,LC,CC,RC,LB,BC,RC)

metroTileItem.Checked=true;或鼠标右键点击可以切换选中/不选中
支持5种方式

2.4 包含关系

metroTilePanel包含itemContainer包含metroTileItem

2.5 对齐,间距,多行,横向/纵向,自适应

在这里插入图片描述

2.6 metroTitlePanel的2种展现形式

在这里插入图片描述

三、SlidePanel动画效果代码

private void button1_Click(object sender, EventArgs e){SetUCstatus(UC_WelCome);metroTilePanel1.Dock = DockStyle.Fill;}private void SetUCstatus(SlidePanel sPanel){sPanel.IsOpen = false;sPanel.OpenBounds = new Rectangle(0, 0, panel1.Width, panel1.Height);if (sPanel.Name == "UC_WelCome"){sPanel.Bounds = new Rectangle(-sPanel.Width, 0, sPanel.Width, sPanel.Height); // Slide from left sidesPanel.SlideSide = DevComponents.DotNetBar.Controls.eSlideSide.Top;}else{sPanel.Bounds = new Rectangle(sPanel.Width, 0, sPanel.Width, sPanel.Height); // Slide from left sidesPanel.SlideSide = DevComponents.DotNetBar.Controls.eSlideSide.Bottom;}sPanel.BringToFront();sPanel.IsOpen = true;//foreach (Control item in panel1.Controls)//{//    if (item.Name != sPanel.Name)//    {//        panel1.Controls.Remove(item);//        item.Dispose();//    }//}//sPanel.Dock = DockStyle.Fill;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/595594.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nest路由参数

当你需要接受动态数据作为接口请求的一部分时(例如:GET请求 /cats/1 获取 id 为 1 的数据) 可以在路径中添加路由参数的标记 :参数名 ,捕捉该位置的动态值 将Param()装饰器加在函数接收参数的位置中,然后使用 1. 写法…

环形链表2--绝妙的运算

一、要求 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统…

FPGA高端项目:解码索尼IMX327 MIPI相机+2路视频融合叠加,提供开发板+工程源码+技术支持

目录 1、前言2、相关方案推荐本博主所有FPGA工程项目-->汇总目录我这里已有的 MIPI 编解码方案 3、本 MIPI CSI-RX IP 介绍4、个人 FPGA高端图像处理开发板简介5、详细设计方案设计原理框图IMX327 及其配置MIPI CSI RX图像 ISP 处理HLS多路视频融合叠加图像缓存HDMI输出工程…

Unity 使用 IL2CPP 发布项目

一、为什么用 IL2CPP Unity的IL2CPP(Intermediate Language to C)是一个编译技术,它将C#代码转换为C代码,然后再编译成平台相关的二进制代码。IL2CPP提供了几个优点,特别是在性能和跨平台部署方面。以下是IL2CPP的一些…

在OKR的管理中,管理者应该如何切实有效的追踪进展,确保其有效落地?

在OKR(Objectives and Key Results,目标与关键成果)的管理中,管理者对于进展的追踪是确保整个系统有效落地的重要环节。有效的追踪不仅能帮助团队保持对目标的清晰认知,还能及时发现问题,调整策略&#xff…

多线程学习-线程池

目录 1.线程池的作用 2.线程池的实现 3.自定义创建线程池 1.线程池的作用 当我们使用Thread的实现类来创建线程并调用start运行线程时,这个线程只会使用一次并且执行的任务是固定的,等run方法中的代码执行完之后这个线程就会变成垃圾等待被回收掉。如…

Vue2(十三):Vuex环境搭建、Vuex工作原理、几个配置项、多组件共享数据、Vuex模块化

一、Vuex 1.理解 1.概念:专门在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。 2…

对抗样本攻击

对抗样本是指经过特殊设计或调整的输入数据,旨在欺骗人工智能模型,使其产生错误的预测或输出。对抗样本通常是通过对原始输入进行微小但精心计算的改变,使得模型产生意外的结果。这种模糊化的输入可能难以从人类角度甄别,但对机器…

顺序表的应用

文章目录 目录1. 基于动态顺序表实现通讯录项目2.顺序表经典算法2.1 [移除元素](https://leetcode.cn/problems/remove-element/description/)2.2 [合并两个有序数组](https://leetcode.cn/problems/merge-sorted-array/description/) 3. 顺序表的问题及思考 目录 基于动态顺序…

随机森林、AdaBoost 和 XGBoost 三者之间的主要区别

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 集成学习是一种强大的机器学习范式,它通过构建并结合多个学习器来提高预测性能。其中,随机森林、AdaBoost 和 XGBoost 是集成学习领域中著名且广泛应用的方法。尽管这些方法共享…

比selenium体验更好的ui自动化测试工具: cypress介绍

话说 Cypress is a next generation front end testing tool built for the modern web. And Cypress can test anything that runs in a browser.Cypress consists of a free, open source, locally installed Test Runner and a Dashboard Service for recording your tests.…

os.listdir()bug总结

今天测试出一个神奇的bug,算是教训吧,找了两天不知道问题在哪,最后才发现问题出现在这 原始文件夹显示 os.listdir()结果乱序 import os base_path "./file/"files os.listdir(base_path)print(files)问题原因 解决办法(排序)