您的位置:首页 > 其它

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;                

                }

              }

          }   

       }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  dx循环找控件