错误排查:
新增 修改 报错 未将对象引入到对象实例: 表和Model绑定的字段不匹配。
如果自定义的组件或者控件未显示在工具箱:
如果Model 无法初始化,可能页面手动绑定的数据出错。
速查按钮选择框的事件应该为Button_Click
菜单不显示:执行权限未配置!如果执行权限配置或者找不到配置,SSMAINMUEN 数据表需要手动插入!
this.DevGridControl.BindingModel = _model_; // DevGridControl绑定modelthis.DevGridControl.SetColumnButton("XXX", dgMain_MRO_ButtonClick);// 绑定某列为按钮事件dgDetail.SetColumnLink("详情", DetailRowCellClick);// 绑定某列为详情事件this.DevGridControl.State = DomainModel.ControlStates.View; // 控制DevGridControl状态是否是只读或编辑this.DevGridControl.HideGroupFilter(); // 控制DevGridControl过滤栏隐藏this.DevGridControl.IsLookupWithFocusNewRow() // 返回 return 是否当前为新编辑的行this.DevGridControl.CompleteEdit(); // 完成编辑状态GridView gv = (GridView)(this.DevGridControl.Grid.MainView); // 获取DevGridControl中的主GridViewGridView gv = this.DevGridControl.Grid.MainView as GridView;DataRowView drv = this.model_MROPRODUCT1.MainBindingSource.Current as DataRowView; // 主表编辑的数据GridView grView = wgMROBOM.Grid.MainView as GridView;DataRow drva = grView.GetFocusedDataRow(); // 获取聚焦行的数据sthis.Model.MainBindingSource.CurrentChanged += new EventHandler(MainBindingSource_PositionChanged); // 主表绑定数据源切换焦点事件ddthis.wgPaging1.RowAmountPerPage = GlobalVariable.AmountPerPage; // 设置分页控制每页行数this.wgToolsTrip1.AddUnDisPalyToolsItem(this.wgToolsTrip1.tsbDel); // 设置工具栏不显示的itemDataSet ds = new DataSet("School"); // 数据表集合(数据库)DataTable dt = new DataTable("Student"); // 数据表DataColumn dcAutoId = new DataColumn("AutoId", typeof(int)); // 数据表中列DataRow currentRow = ds.Tables[i].Rows[r]; // 数据表中行// 子表作业项添加自定义GridView gv = this.wgMROBOM.Grid.MainView as GridView;gv.ShowingEditor += wgMROBOM_ShowingEditor; // 添加子表编辑前事件gv.ValidateRow += wgMROBOM_ValidateRow;gv.InitNewRow += wgMROBOM_InitNewRow;// 添加子表新增行事件gv.ShowingEditor += _ShowingEditor; // 注册绑定单元格编辑前事件gv.OptionsBehavior.Editable = true;// 是否可编辑gv.Columns["XXXX"].Visible = false; // 设置 GridView 某列是否显示gv.FocusedColumn.FieldName; // 获取聚焦GridVied 聚焦行的列名字// 读取子表 指定DataTablemodel_.Data.Domain.Tables["TABLE_NAME"]// 速查子表新增if (wdgDetail.IsLookupWithFocusNewRow()){this.lkpMROLEDGER.TackbackResult = (dic, model) =>{DataRowView drva = this.model_MROEXCEPTION1.BindingSources["MOULDEXCEPTIONA"].AddNew() as DataRowView;drva["MROLEDGER_SERIALNUMBER"] = dic[0]["更换子件序列号"];drva["MROPRODUCT_GUID"] = dic[0]["更换MRO台账GUID"];drva["RLIFE"] = dic[0]["更换子件剩余寿命"];};this.lkpMROLEDGER.Lookup(KLDomainModel.TakebackModeEnum.ImportNew);// 新增}else{this.lkpMROLEDGER.TackbackResult = (dic, model) =>{if (!string.IsNullOrEmpty(dic[0]["原MRO基本信息GUID"].ToString())){DataRowView drva = this.model_MROEXCEPTION1.BindingSources["MOULDEXCEPTIONA"].Current as DataRowView;drva["MROLEDGER_SERIALNUMBER"] = dic[0]["更换子件序列号"];drva["MROPRODUCT_GUID"] = dic[0]["更换MRO台账GUID"];drva["RLIFE"] = dic[0]["更换子件剩余寿命"];}};this.lkpMROLEDGERChange.Lookup(KLDomainModel.TakebackModeEnum.ModifyCurrent); // 修改}this.wdgDetail.CompleteEdit();/* 设置DevGrid 表格数据 小数显示位数 *//// <summary>/// 设置小数位数/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void View_CustomRowCellEdit(object sender, CustomRowCellEditEventArgs e){if (e.RowHandle < 0)return;if (e.Column.FieldName.Contains("AQTY")){RepositoryItemCalcEdit textEdit = new RepositoryItemCalcEdit();textEdit.Mask.UseMaskAsDisplayFormat = true;int length = string.IsNullOrEmpty(view.GetRowCellValue(e.RowHandle, "PLACES").ToString()) ? 2 : int.Parse(view.GetRowCellValue(e.RowHandle, "PLACES").ToString());textEdit.EditMask = $"n{length}";e.RepositoryItem = textEdit;}}
