DevExpress.XtraLayout.LayoutControl 动态添加控件
// Create an item within a specified group,
// bound to a specified data field with the specified editor
private LayoutControlItem CreateItemWithBoundEditor(BaseEdit editor, object dataSource,
string dataMember, LayoutControlGroup parentGroup) {
editor.DataBindings.Add("EditValue", dataSource, dataMember);
LayoutControlItem item = parentGroup.AddItem(dataMember, editor) as LayoutControlItem;
return item;
}
private void CreateLayout() {
//Add First Name and Last Name items
LayoutControlItem itemFirstName = CreateItemWithBoundEditor(new TextEdit(), employeesSource,
"FirstName", layoutControl1.Root);
LayoutControlItem itemLastName = CreateItemWithBoundEditor(new TextEdit(), employeesSource,
"LastName", layoutControl1.Root);
// Move the Last Name to the right of the First Name
itemLastName.Move(itemFirstName, InsertTypes.Right);
// Add the Birthday group with a birthday editor inside
LayoutControlGroup birthdayGroup = layoutControl1.AddGroup("Birthday Information");
CreateItemWithBoundEditor(new DateEdit(), employeesSource, "BirthDate", birthdayGroup);
// Add a tab with three address fields
TabbedControlGroup tabbedGroup = layoutControl1.AddTabbedGroup();
LayoutControlGroup addressGroup = tabbedGroup.AddTabPage("Address Details");
string[] dataFields = new string[] { "Country", "City", "Address" };
foreach (string dataField in dataFields)
CreateItemWithBoundEditor(new TextEdit(), employeesSource, dataField, addressGroup);
// Add a tab with a photo
LayoutControlGroup groupPhoto = tabbedGroup.AddTabPage("Photo");
CreateItemWithBoundEditor(new PictureEdit(), employeesSource, "Photo", groupPhoto);
}
再次添加的时候如果需要先清除之前的item,代码如下
layoutControlSelectBusiness.BeginUpdate();
layoutControlSelectBusiness.Controls.Clear();
layoutControlSelectBusiness.Root.Items.Clear();
再次添加item的代码
layoutControlSelectBusiness.EndUpdate();
谢谢你提供的这篇代码,帮我解决了layoutControl多列自动排版的问题, 关键代码:
// Move the Last Name to the right of the First Name
itemLastName.Move(itemFirstName, DevExpress.XtraLayout.Utils.InsertType.Right);
再次表示感谢!
DevExpress.XtraLayout.LayoutControl 动态添加控件的更多相关文章
- winform导入导出excel,后台动态添加控件
思路: 导入: 1,初始化一个OpenFileDialog类 (OpenFileDialog fileDialog = new OpenFileDialog();) 2, 获取用户选择文件的后缀名(s ...
- Android 在布局容器中动态添加控件
这里,通过一个小demo,就可以掌握在布局容器中动态添加控件,以动态添加Button控件为例,添加其他控件同样道理. 1.addView 添加控件到布局容器 2.removeView 在布局容器中删掉 ...
- VC中动态添加控件
VC中动态添加控件 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个 ...
- jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法
博客分类: jquery-easyui jQueryAjax框架HTML 现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...
- asp.net动态添加控件学习
看了老师的教程后,自己一点感悟记录下来: 1.在页面提交后,动态生成的控件会丢失, 但如果生成控件的代码在pageload中,就可以,原理是每次生成页面都执行生成. 2.动态按件或页面原来控件, 在页 ...
- WPF:理解ContentControl——动态添加控件和查找控件
WPF:理解ContentControl--动态添加控件和查找控件 我认为WPF的核心改变之一就是控件模型发生了重要的变化,大的方面说,现在窗口中的控件(大部分)都没有独立的Hwnd了.而且控件可以通 ...
- 怎样在不对控件类型进行硬编码的情况下在 C#vs 中动态添加控件
文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET ...
- JQuery动态添加控件并取值
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- WPF 动态添加控件以及样式字典的引用(Style introduction)
原文:WPF 动态添加控件以及样式字典的引用(Style introduction) 我们想要达到的结果是,绑定多个Checkbox然后我们还可以获取它是否被选中,其实很简单,我们只要找到那几个关键的 ...
随机推荐
- Extjs Ajax 分页
var storeCpye = new Ext.data.GroupingStore({ proxy : new Ext.data.HttpProxy({ url : 'cxgl_cpye.app?d ...
- .NET:CLR via C#:CLR Hosting And AppDomains
AppDomain Unloading To unload an AppDomain, you call AppDomain’s Unload static method.This call caus ...
- AlertView动画
AlertView动画 效果 源码 https://github.com/YouXianMing/Animations // // AbstractAlertView.h // Animations ...
- Android读取Excel文件
转:http://bigcat.easymorse.com/?p=1648 java可以读取Excel文件,android同样也行,效果如下: excel源文件: 读取日志如下: 首先需要引入jxl. ...
- 解决hiveserver2报错:java.io.IOException: Job status not available - Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
用户使用的sql: select count( distinct patient_id ) from argus.table_aa000612_641cd8ce_ceff_4ea0_9b27_0a3a ...
- Android Binder 设计与实现 - 设计篇
关键词 Binder Android IPC Linux 内核 驱动 摘要 Binder是Android系统进程间通信(IPC)方式之一.Linux已经拥有管道,system V IPC,socket ...
- Java多媒体编程应用
1. 声音文件的播放 1.1 在Applet中播放声音 在Applet中,可以使用AudioClip来播放声音,它非常简单,只有三个方法:play().loop()和stop(). 例1.1 利用Au ...
- ELK kibana查询与过滤
在kibana中,可通过搜索查询过滤事务或者在visualization界面点击元素过滤. 创建查询 在Discover界面的搜索栏输入要查询的字段.查询语法是基于Lucene的查询语法.允许布尔运算 ...
- @JVM中对象的引用类型
JVM中有四种引用类型:强引用.软引用.弱引用.虚引用 强引用(Stong Reference):是指在程序代码中普遍存在的,类似:Object obj = new Object()这类的引用,只 ...
- Redis:ERR operation not permitted
Redis服务开启之后: D:\Redis\redis>redis-server.exe redis.conf 那么另外开一个命令窗口 D:\Redis\redis>redis-cli.e ...