在很多数据表格项目中,经常使用表格来显示数据,然后使用标准的文本编辑框来编辑数据,也就是说当点击某一行时会在表格的另一个区域显示出几个文本编辑框与该行的可编辑单元格对应,通过
Infragistics Windows Forms界面套包里的WinGrid控件,开发人员可以快速实现这种功能,具体可以参考下面的介绍和主要代码:
1.在Form窗体的Load事件里需要添加如下代码:
this.txtShipAddress.DataBindings.Add("Text",
this.nWindDataSet3.Orders, "ShipAddress");
this.txtShipCity.DataBindings.Add("Text", this.nWindDataSet3.Orders, "ShipCity");
this.txtShipName.DataBindings.Add("Text", this.nWindDataSet3.Orders, "ShipName");
2.在UltraGrid1.InitializeLayout需要设置行选择类型和单元格点击操作等
using Infragistics.Win.UltraWinGrid;
...
private void ultraGrid1_InitializeLayout(object sender,
Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
{
e.Layout.Override.SelectTypeRow = SelectType.Single;
e.Layout.Override.CellClickAction = CellClickAction.RowSelect;
}
3.最后需要在UltraGrid1.AfterSelectChange事件里进行如下设置
private void ultraGrid1_AfterSelectChange(object sender,
Infragistics.Win.UltraWinGrid.AfterSelectChangeEventArgs e)
{
// Use CurrencyManager to set position
CurrencyManager currencyManager1;
currencyManager1 = (CurrencyManager)this.BindingContext[this.nWindDataSet3.Orders];
currencyManager1.Position = this.ultraGrid1.Selected.Rows[0].Index;
}
4.以上只是该事例的部分代码,如果需要完整的事例,可以参考该产品提供的事例和完整代码