NetAdvantage控件使用:UltraGrid

1。 添加Column
Start\Basic Settings\Data Schema\Manually Define a Schema\添加Column,命名用数据库中的字段名。

2。 添加Column中文名称
Band and Column Settings\Band [0](手动添加Column后)\Columns\选择列\Header\修改Caption属性

3。整个表的属性在Basic Settings或职能按钮中修改;单列的属性在Band中修改。

4。Basic Settings中Data Schema用于设置数据列;Presets用于调整样式;Picker用于定义一些选项属性。

5。 绑定数据
this.ultraGrid1.DataSource = myDataSet.Tables[0];
数据列也可以在DataTable中设定,Column[0].ColumnName或Column[0].Caption

6。 Header换行
智能按钮/Wrap Header Text 设为true,默认为不换行的

7。排序:Picker/Filtring/Allow
8。分组:Picker/OutLook GroupBy/Active
9。编辑:Picker/Update
10。多行表头:Column Arrangement Designer/Add Group/Add Level/把相应的列拖到组下面,
11。隐藏列:Column Arrangement Designer/Show Hide
12。单列不可编辑:Band[0]/Column/AllowEdit
13。单击单元格选择状态:Band[0]/Column/CellClickAction
14。绑定控件:Band[0]/Column/EditorControl
15。单元格合并:Band[0]/Column/MergedCell。。。
16。定住不滚动列:Picker/Fixed Header
17。增加行:
this.ultraGrid1.Rows.Band.AddNew();
this.ultraGrid1.Rows[this.ultraGrid1.Rows.Count - 1].Cells["REC_ID"].Value = CommomFun.GetID();
18。删除行:
if (this.ultraGrid1.Rows.Count <= 0)
                {
                    MessageInfo.ShowMessage("m_system_client_0009");
                    return ;
                }
                #endregion
                if (this.ultraGrid1.ActiveRow != null)
                {
                    this.ultraGrid1.ActiveRow.Selected = true;
                }
                if (MessageInfo.ShowMessage("m_system_client_0003", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    bool blnDeleted = false;
                    for (int i = 0; i < this.ultraGrid1.Rows.Count; i++)
                    {
                        if (this.ultraGrid1.Rows[i].Selected || this.ultraGrid1.Rows[i].IsActiveRow)
                        {
                            if (this.ultraGrid1.Rows[i].Delete(false))
                            {
                                i--;
                            } 
                            blnDeleted = true;
                        }
                    }
                   
                    if (!blnDeleted)
                    {
                        MessageInfo.ShowMessage("m_system_client_0009");
                    }
                } 

1 UltraGrid风格设置函数
public static void ColorGrid(ref Infragistics.Win.UltraWinGrid.UltraGrid ug)
  {
   //标题
   ug.DisplayLayout.CaptionAppearance.TextHAlign = Infragistics.Win.HAlign.Left;
   ug.DisplayLayout.CaptionAppearance.BackColor = Color.LightSteelBlue;

   //边框显示
   ug.DisplayLayout.BorderStyle = Infragistics.Win.UIElementBorderStyle.Solid;

   //背景色
   ug.DisplayLayout.Appearance.BackColor = Color.White;
   
   //默认颜色设置
   ug.DisplayLayout.Override.HeaderAppearance.BackColor = Color.LightSteelBlue;//列
   ug.DisplayLayout.Override.RowSelectorAppearance.BackColor = Color.LightSteelBlue;//行

   //选中颜色设置
   ug.DisplayLayout.Override.SelectedCellAppearance.BackColor = Color.SteelBlue;//选中单元格
   ug.DisplayLayout.Override.SelectedRowAppearance.BackColor = Color.SteelBlue;//选中行

   //ActiveRowx颜色设置
   ug.DisplayLayout.Override.ActiveRowAppearance.BackColor = Color.SteelBlue;
  }

2 UltraGrid 删除选中的行
this.ultraGrid1.DeleteSelectedRows(false);

3 委托
this.ultraGrid1.AfterCellUpdate -= new Infragistics.Win.UltraWinGrid.CellEventHandler(this.ultraGrid1_AfterCellUpdate);
      this.ultraGrid1.Rows[0].Cells["字段名"].Value = "";
      this.ultraGrid1.AfterCellUpdate += new Infragistics.Win.UltraWinGrid.CellEventHandler(this.ultraGrid1_AfterCellUpdate);

4 格子的属性
e.Cell.Column.Key  :字段名
e.Cell.Column.Header.Caption  :字段标题名
e.Cell.column.Band.Key :Band(表)的名称;

5 判断某列是否重复
public static bool CheckIfSame(UltraGrid ug, string colname)
  {
   for(int i = 0; i < ug.Rows.Count; i++)
   {
    for(int j = i+1; j < ug.Rows.Count; j++)
    {
     if(ug.Rows[i].Cells[colname].Text == ug.Rows[j].Cells[colname].Text && ug.Rows[i].Cells[colname].Text != "")
     {
      return true;
     }
    }
   }
   return false;
  }

6 Enter切换,在form_load事件里写
   this.ultraGrid1.KeyActionMappings.Add(new Infragistics.Win.UltraWinGrid.GridKeyActionMapping(System.Windows.Forms.Keys.Enter, Infragistics.Win.UltraWinGrid.UltraGridAction.NextCell, Infragistics.Win.UltraWinGrid.UltraGridState.IsCheckbox, Infragistics.Win.UltraWinGrid.UltraGridState.Cell, 0, 0));

7 选中一行
this.ultraGrid1.Rows[i].Activate();
      this.ultraGrid1.Rows[i].Selected = true;
8 空行
    8.1是否显示空行
this.UltraGrid1.DisplayLayout.EmptyRowSettings.ShowEmptyRows = true;
    8.2空行样式
    EmptyRowStyle style = (EmptyRowStyle)this.ultraComboEditorStyle.Value;
   this.UltraGrid1.DisplayLayout.EmptyRowSettings.Style = style; 

9.保存属性设置

this.gridOne.DisplayLayout.Save(objLayout1,Infragistics.Win.UltraWinGrid.PropertyCategories.All);

 

重置属性设置

this.gridOne.DisplayLayout.Load(this.m_objFancyLayout, Infragistics.Win.UltraWinGrid.PropertyCategories.All);

10.不同行样式

this.gridRowProperties.DisplayLayout.Override.RowAlternateAppearance.BackColor = Color.Cyan;

this.gridRowProperties.DisplayLayout.Override.RowAlternateAppearance.ForeColor = Color.DarkBlue;

11.下拉框UltraDropDown

this.UltraDropDown1.ValueMember = "ProductID";

this.UltraDropDown1.DisplayMember = "Name";

this.ultraGrid1.DisplayLayout.Bands[0].Columns["ProductID"].ValueList = this.UltraDropDown1


转自http://www.cnblogs.com/strgvi/articles/779771.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Infragistics NetAdvantage 2012是一款功能强大的软件集合,用于开发人员创建高质量的用户界面和数据可视化应用程序。它提供了丰富的工具和控件,帮助开发人员快速构建功能丰富、现代化的应用程序。 NetAdvantage 2012包括了多个精心设计的控件,如数据网格、图表、日历、工具栏等,它们可以轻松地集成到各种应用程序中。这些控件具有灵活的配置选项和丰富的样式,开发人员可以根据自己的需求进行自定义。此外,NetAdvantage 2012还提供了丰富的主题,使用户界面看起来更加专业和精美。 使用NetAdvantage 2012,开发人员可以快速创建直观、易于使用的应用程序。它提供了丰富的数据绑定功能,可以轻松地将控件与数据库或其他数据源进行绑定。开发人员还可以通过使用.Net框架的优势,轻松地处理和管理数据,从而提高应用程序的性能和可靠性。 此外,NetAdvantage 2012还提供了强大的图表功能,可以帮助开发人员将数据可视化并进行分析。图表控件支持多种图表类型,如柱状图、折线图、饼图等,开发人员可以根据需要选择合适的图表类型展示数据。图表控件还支持动画和交互功能,使用户能够更直观地理解和操作数据。 总而言之,Infragistics NetAdvantage 2012是一款功能强大的开发工具,提供了丰富的控件和功能,帮助开发人员快速构建现代化、高质量的用户界面和数据可视化应用程序。无论是企业应用程序还是个人项目,NetAdvantage 2012都可以为开发人员带来许多便利和高效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值