系统账套管理功能调整
YESWin winform开发框架 集成了系统账套管理功能
功能在 系统管理 → 账套维护
有用户提出功能的风格没统一,现在需要把 按钮 新增、删除、保存 放到顶部操作区域里面
请参考实现步骤,有两种实现方法,一种是继承 frmBaseFunction ,另一种是继承 frmBaseChild
frmBaseFunction 窗体 本身继承了 frmBaseChild,多了 IniButton 方法的实现,实现了一些公共权限的操作按钮配置,我们可以直接使用,如果继承了 frmBaseChild 我们就要自己再重写 InitButton 并且一个一个的添加操作按钮
用户可以根据自己开发喜好去选择继承基类窗体
一、这里我们继承 frmBaseChild
public partial class frmDBList : YESWin.UI.Dev.LibForm.frmBaseChild
二、重构属性 FormAuthority ,配置窗体权限
/// <summary> /// 窗体权限,新增账套,删除账套,保存配置 /// </summary> protected override int FormAuthority { get { return FunctionAuthorityCommon.ADD + FunctionAuthorityCommon.DELETE + FunctionAuthorityCommon.SaveEx; } }
GarsonZhang www.yesdotnet.com
三、重构 IniButton,根据权限初始化操作按钮
把原来的按钮事件迁移到新的事件中去
/// <summary> /// 初始化操作按钮 /// </summary> public override void IniButton() { //新增 if (FormAuthorityExist(FunctionAuthorityCommon.ADD)) AddButton(YESWin.UI.Core.RibbonButton.RibbonCommonButtons.CommonButtons.btnADD, FunctionAuthorityCommon.ADD, DoAdd); //保存 AddButton(YESWin.UI.Core.RibbonButton.RibbonCommonButtons.CommonButtons.btnSave, FunctionAuthorityCommon._None, DoSave); if (FormAuthorityExist(FunctionAuthorityCommon.DELETE)) AddButton(YESWin.UI.Core.RibbonButton.RibbonCommonButtons.CommonButtons.btnDelete, FunctionAuthorityCommon.DELETE, DoDelete); } /// <summary> /// 添加账套 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void DoAdd(object sender, ItemClickEventArgs e) { DataTable data = frmDialog_DBEdit.ShowForm(); if (data != null) { (gc_Summary.DataSource as DataTable).Rows.Add(data.Rows[0].ItemArray); } } /// <summary> /// 删除账套 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void DoDelete(object sender, ItemClickEventArgs e) { DataRow dr = gv_Summary.GetFocusedDataRow(); if (dr == null) return; string DBCode = ConvertLib.ToString(dr[sys_DataBaseList.DBCode]); bll.Delete(DBCode); gv_Summary.DeleteSelectedRows(); Msg.ShowInformation("删除成功!"); } /// <summary> /// 保存账套配置 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void DoSave(object sender, ItemClickEventArgs e) { DataTable dt = gc_Summary.DataSource as DataTable; dt.AcceptChanges(); DataRow dr = gv_Summary.GetFocusedDataRow(); if (dr == null) return; string DBName = ConvertLib.ToString(dr[sys_DataBaseList.DBDisplayText]); string NewDBName = ConvertLib.ToString(txt_DBName.EditValue); DataSet ds = new DataSet(); try { if (DBName != NewDBName) { dr[sys_DataBaseList.DBDisplayText] = NewDBName; ds.Tables.Add(dt); } if (ucModuleTreeList1.EditData.GetChanges() != null) ds.Tables.Add(ucModuleTreeList1.EditData); if (ds.Tables.Count > 0) { bll.Update(ds); ds.AcceptChanges(); Msg.ShowInformation("保存成功!"); } } catch (Exception ex) { throw ex; } finally { ds.Tables.Clear(); } }
GarsonZhang www.yesdotnet.com
完成
重新编译程序,完成效果如下:
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
YESWinform YES开发框架