DX控件循环找控件
2015-09-03 14:23
295 查看
1、Ribbon循环查找 RibbonPage---RibbonPageGroup---BarButtonItem
foreach (RibbonPage rPage in RPage_Home.Collection)
{
foreach (RibbonPageGroup rpg in rPage.Groups)
{
foreach (var btn in rpg.Ribbon.Items)
{
if (btn is BarButtonItem)
{
BarButtonItem btnBar = btn as BarButtonItem;
if (btnBar.Name.ToString() == strBtnRpg)
{
btnBar.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
}
}
}
}
}
2、循环在layoutControlGroup里的LayoutControlItem sumItems[i]为一组控件名的集合(TextBox)
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup02.Items)
{
if (item.ControlName == sumItems[i])
{
item.Control.BackColor = Color.LightSalmon;
values += item.Control.Text + "-";
}
}
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup01.Items)
{
if (item.Control is TextEdit)
{
item.Control.Text = "";
}
}
3、取出表中一行数据,循环赋值给LayoutControlItem中的TextEdit
DataRow dr = dt.Rows[0];
for (int i = 0; i < dr.ItemArray.Length; i++)
{
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup01.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
item.Control.Text = dr[dr.Table.Columns[i].ColumnName.ToString()].ToString();
}
}
}
4、将界面的LayoutControlItem中的TextEdit的数据循环赋值给特定行
//插入所有数据
for (int i = 0; i < dr.ItemArray.Length; i++)
{
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup01.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
dr[dr.Table.Columns[i].ColumnName.ToString()] = item.Control.Text;
break;
}
}
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup02.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
dr[dr.Table.Columns[i].ColumnName.ToString()] = item.Control.Text;
break;
}
}
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup04.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
dr[dr.Table.Columns[i].ColumnName.ToString()] = item.Control.Text;
break;
}
}
}
5.How to loop through all ribbon tabs, ribbon bar and items on WinForms Ribbon control
If you need to loop through all ribbon tabs, ribbon bars and items on each ribbon bar here is how to do it.
C#:
foreach (BaseItem item in ribbonControl1.Items)
{
RibbonTabItem ribbonTab = item as RibbonTabItem;
if (ribbonTab != null)
{
RibbonPanel panel = ribbonTab.Panel;
foreach (Control panelControl in panel.Controls)
{
RibbonBar ribbonBar = panelControl as RibbonBar;
if (ribbonBar != null)
{
// At this point you can simply disable each RibbonBar and that will //disable all items on it
//ribbonBar.Enabled = false;
// Here is how you loop through items on RibbonBar
foreach (BaseItem ribbonBarItem in ribbonBar.Items)
{
ribbonBarItem.Enabled = false;
}
}
}
}
}
foreach (RibbonPage rPage in RPage_Home.Collection)
{
foreach (RibbonPageGroup rpg in rPage.Groups)
{
foreach (var btn in rpg.Ribbon.Items)
{
if (btn is BarButtonItem)
{
BarButtonItem btnBar = btn as BarButtonItem;
if (btnBar.Name.ToString() == strBtnRpg)
{
btnBar.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
}
}
}
}
}
2、循环在layoutControlGroup里的LayoutControlItem sumItems[i]为一组控件名的集合(TextBox)
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup02.Items)
{
if (item.ControlName == sumItems[i])
{
item.Control.BackColor = Color.LightSalmon;
values += item.Control.Text + "-";
}
}
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup01.Items)
{
if (item.Control is TextEdit)
{
item.Control.Text = "";
}
}
3、取出表中一行数据,循环赋值给LayoutControlItem中的TextEdit
DataRow dr = dt.Rows[0];
for (int i = 0; i < dr.ItemArray.Length; i++)
{
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup01.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
item.Control.Text = dr[dr.Table.Columns[i].ColumnName.ToString()].ToString();
}
}
}
4、将界面的LayoutControlItem中的TextEdit的数据循环赋值给特定行
//插入所有数据
for (int i = 0; i < dr.ItemArray.Length; i++)
{
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup01.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
dr[dr.Table.Columns[i].ColumnName.ToString()] = item.Control.Text;
break;
}
}
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup02.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
dr[dr.Table.Columns[i].ColumnName.ToString()] = item.Control.Text;
break;
}
}
foreach (DevExpress.XtraLayout.LayoutControlItem item in layoutControlGroup04.Items)
{
if (item.Text==dr.Table.Columns[i].ColumnName.ToString())
{
dr[dr.Table.Columns[i].ColumnName.ToString()] = item.Control.Text;
break;
}
}
}
5.How to loop through all ribbon tabs, ribbon bar and items on WinForms Ribbon control
If you need to loop through all ribbon tabs, ribbon bars and items on each ribbon bar here is how to do it.
C#:
foreach (BaseItem item in ribbonControl1.Items)
{
RibbonTabItem ribbonTab = item as RibbonTabItem;
if (ribbonTab != null)
{
RibbonPanel panel = ribbonTab.Panel;
foreach (Control panelControl in panel.Controls)
{
RibbonBar ribbonBar = panelControl as RibbonBar;
if (ribbonBar != null)
{
// At this point you can simply disable each RibbonBar and that will //disable all items on it
//ribbonBar.Enabled = false;
// Here is how you loop through items on RibbonBar
foreach (BaseItem ribbonBarItem in ribbonBar.Items)
{
ribbonBarItem.Enabled = false;
}
}
}
}
}
相关文章推荐
- 标题:快速排序
- KVM--简单篇
- OpenWRT发送邮件(支持TLS)
- Activity传递数据(三)传递对象
- 内存分配的三种方式
- 附2、MDT 2013 Update 1 引导镜像LiteTouchPE_x64.ISO无法在EFI环境下无法启动的修改办法
- 从Activity中返回数据--startActivityForResult的使用..
- Mysql分库分表方案 - 血泪汗KG - 开源中国社区
- ViewPager和ScrollView冲突,不重写控件的一个解决方法
- android arm greenDAO
- poj_2286 IDA*
- Unity中xml的简单用法笔记
- java 泛型(generic)
- 可扩展性设计之数据切分 - ggjucheng - 博客园
- bzoj1263
- SQL通过出生日期获取年龄
- 2015半年总结—愿得菩提,心似琉璃
- 2015年终总结—愿得菩提,心似琉璃
- 使用nssm将STAF安装为windows系统服务
- 用分治法实现快排