DevExpress04、LayoutControl、GalleryControl
2024-08-29 13:12:36
首先需求是通过LayoutControl控件设计下图所示的窗体:
从该界面的设计过程
1.向窗体中添加LayoutControl控件
在将该控件拖入窗体后,最好立即设置该控件的尺寸和位置。拖入后,在如下图所示的情况下,开始修改尺寸和位置(在这里设置的是填充整个窗体)
2.向LayoutControl中添加控件
(1)添加DateEdit控件名为dateEdit1,拖入后下图所示,控件默认填充整个DateEdit,而且在界面中或者dateEdit1的属性中是无法直接修改大小的。
(2)修改dateEdit1的尺寸。
右键layoutControlGroup1(鼠标必须在该控件上右键),在弹出的菜单中点击【CustomizeLayout】→【Layout Tree View】→【layoutControlItem4】
然后在属性窗口中修改layoutControlItem1的属性:
- ①将SizeConstraintsType设置为Custom;
- ②设置MaxSize(MaxSize的Height属性来设置控件的高度,Width属性设置控件的宽)。
如下图所示。
(3) 设置文字到控件的间距,需要设置LayoutControl.OptionsItemText.TextToControlDistance属性。设置该属性之后,里面的每个子控件都按照这个距离显示文字到控件的距离。
(4) 设置各子控件之间的间距,设置子控件的Spacing属性。可以统一设置全方位的间距,也可以单独设置某一个方位的间距。
GalleryControl
控件可显示图像,同时让你将它们分类。
效果图:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using DevExpress.XtraBars.Ribbon;
using DevExpress.Utils.Drawing; namespace DXApplication_1
{
public partial class GalleryContrlForm : DevExpress.XtraEditors.XtraForm
{
public GalleryContrlForm()
{
InitializeComponent();
} private void GalleryContrlForm_Load(object sender, EventArgs e)
{ GalleryControl galleryControl = new GalleryControl();
galleryControl.Dock = DockStyle.Fill;
this.Controls.Add(galleryControl); Image im1 = Image.FromFile("C:\\Users\\teeking_scx\\source\\repos\\DXApplication_1\\imgs\\delete.png");
Image im2 = Image.FromFile("C:\\Users\\teeking_scx\\source\\repos\\DXApplication_1\\imgs\\edit.png");
Image im3 = Image.FromFile("C:\\Users\\teeking_scx\\source\\repos\\DXApplication_1\\imgs\\menu.png");
Image im4 = Image.FromFile("C:\\Users\\teeking_scx\\source\\repos\\DXApplication_1\\imgs\\new.png");
Image im5 = Image.FromFile("C:\\Users\\teeking_scx\\source\\repos\\DXApplication_1\\imgs\\search.png");
Image im6 = Image.FromFile("C:\\Users\\teeking_scx\\source\\repos\\DXApplication_1\\imgs\\heart.png"); galleryControl.Gallery.ItemImageLayout = ImageLayoutMode.ZoomInside;
galleryControl.Gallery.ImageSize = new Size(120, 90);
galleryControl.Gallery.ShowItemText = true; GalleryItemGroup group1 = new GalleryItemGroup();
group1.Caption = "Anime";
galleryControl.Gallery.Groups.Add(group1); GalleryItemGroup group2 = new GalleryItemGroup();
group2.Caption = "Girl";
galleryControl.Gallery.Groups.Add(group2); group1.Items.Add(new GalleryItem(im1, "Leon", ""));
group1.Items.Add(new GalleryItem(im2, "Fate", ""));
group1.Items.Add(new GalleryItem(im3, "未闻花名", "")); group2.Items.Add(new GalleryItem(im4, "Mathilda", ""));
group2.Items.Add(new GalleryItem(im5, "Saber", ""));
group2.Items.Add(new GalleryItem(im6, "面码", ""));
} private void label1_Click(object sender, EventArgs e)
{ }
}
}
最新文章
- codevs1183泥泞的道路
- uva 489.Hangman Judge 解题报告
- 用Mysqlbinlog备份BinLog文件
- CRM行编辑控件
- 第一百九十三天 how can I 坚持
- 高效使用Bitmaps(三) 神奇的Cache
- JQuery实现隔行变色和突出显示当前行 效果
- Push to origin/master was rejected (Git提交错误)
- 超哥笔记--shell 基本命令(4)
- js隐藏元素
- Linux命令(一)grep查询
- spring依赖注入之手工装配
- 3. 哈工大LTP解析
- Java并发知识(1)
- 基于HTML5 Canvas粒子效果文字动画特效
- C# Razor 小笔记和某些细节
- 在w7下的wamp中配置memcache
- 构造函数、原型对象prototype、实例、隐式原型__proto__的理解
- 使用sqlmap执行SQL注入攻击
- 1.docker镜像