日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

GZFramwork快速开发框架演练之会员系统(四)添加商品管理

發布時間:2024/4/13 windows 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GZFramwork快速开发框架演练之会员系统(四)添加商品管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

1.1:創建表結構

新建三張商品關聯的表,表模型如下:

?

創建SQL語句略

1.2:生成表Model(生成方法見上一節)

1.3:生成tb_ProductType的單結構界面然后添加到項目中

?

?

1.4:修改GZVIP.Dictionary模塊中DictionaryMain類,新增產品類型功能

?

public class DictionaryMain : ModuleFunctionManage{public DictionaryMain(){FunPools.AddFunction(typeof(frm_Level), "等級管理", "Level");FunPools.AddFunction( typeof(frm_ProductType), "產品類型", "ProductType" );}}

Image添加如下三個圖片如下

相應修改frm_ProductType界面

運行重新加載字典管理DLL結果如下:

?

?

至此:商品類型添加完畢

接下來生成商品管理

?

2.1生成tb_Product表的但結構界面并附加到項目

對界面做一些簡單設置:

切換到后臺代碼修改Load代碼(紅色部分):

private void frm_Product_Load(object sender, EventArgs e){_SummaryView = gv_Summary;gv_Summary.OptionsView.ColumnAutoWidth = false;//_bll = new bllBusiness(typeof(tb_Product),"P",4); _bll = new bllBusiness<tb_Product>("P", 4, typeof (tb_ProductPrice));//添加只讀列base.AddControlsOnlyRead(txtCreateUser,txtCreateDate,txtLastUpdateUser,txtLastUpdateDate);//只有新增狀態下才可用base.AddControlsOnAddKey();this.BoundDatasource();}

?

修改DoBoundEditData方法

//綁定明細編輯頁的數據public override void DoBoundEditData(){//base.DoBoundEditData(); LibraryTools.DoBindingEditorPanel(layoutControl1, EditData.Tables[_bll.SummaryTableName], "txt" );gc_Detail.DataSource = EditData.Tables[tb_ProductPrice._TableName];}

?

編輯數據編輯頁增加按鈕和刪除按鈕兩個按鈕的點擊事件

?

//明細表增加private void btn_DetailAdd_Click(object sender, EventArgs e){//新增一條記錄,并設置商品編號DataRow dr = EditData.Tables[tb_ProductPrice._TableName].Rows.Add();dr[tb_ProductPrice.ProductID] = txtProductID.EditValue;}//明細表刪除private void btn_DetailDelete_Click(object sender, EventArgs e){if (gv_Detail.FocusedRowHandle < 0) return;if (Msg.AskQuestion("確定要刪除選中的價格記錄嗎?") == false) return;gv_Detail.DeleteSelectedRows();}

?

修改DictionaryMain類

public class DictionaryMain : ModuleFunctionManage{public DictionaryMain(){FunPools.AddFunction(typeof(frm_Level), "等級管理", "Level");FunPools.AddFunction(typeof(frm_ProductType), "商品類型", "ProductType");FunPools.AddFunction( typeof(frm_Product), "商品管理", "Product" );}}

?

?

2.2添加產品類別綁定

修改GZVIP.BLL.DastaCache類,增加ProductType只讀屬性

?

/// <summary>/// 產品類別/// </summary>public DataTable ProductType{get{DataTable dt = CommonData.FindFromCache(tb_ProductType._TableName);if (dt == null){dt = bllDataCommon.GetAllDataTable(tb_ProductType._TableName, Loginer.CurrentLoginer.SystemDBName, tb_ProductType.ProductTypeID, tb_ProductType.ProductTypeName);AddToCache(dt.Copy());}return dt;}}

?

修改GZVIP.Library.BouindData類,增加BoundProductType()靜態方法

?

/// <summary>/// 綁定商品類別/// </summary>/// <param name="lue"></param>/// <param name="displayCombination"></param>/// <param name="ADDNULL"></param>public static void BoundProductType(LookUpEdit lue, bool displayCombination, bool ADDNULL){lue.Properties.Columns.Clear();InitializeControl(lue, new string[] { "編號", "名稱" }, new string[] { tb_ProductType.ProductTypeID, tb_ProductType.ProductTypeName });lue.Properties.Columns[0].Width = 40;lue.Properties.Columns[1].Width = 160;lue.Properties.PopupWidth = 200;DataTable dt = DataCache.Cache.ProductType.Copy();if (ADDNULL) dt = Common.ADDNULL(dt);string displayMember = tb_ProductType.ProductTypeName;if (displayCombination){Common.AddColumns(dt, tb_ProductType.ProductTypeID, tb_ProductType.ProductTypeName);displayMember = Common.DefNewColName;}DataBinder.BindingLookupEditDataSource(lue, dt, displayMember, tb_ProductType.ProductTypeID);}/// <summary>/// 綁定商品類別/// </summary>/// <param name="lue"></param>/// <param name="displayCombination"></param>/// <param name="ADDNULL"></param>public static void BoundProductType(CheckedComboBoxEdit lue, bool displayCombination, bool ADDNULL){DataTable dt = DataCache.Cache.ProductType.Copy();if (ADDNULL) dt = Common.ADDNULL(dt);string displayMember = tb_ProductType.ProductTypeName;if (displayCombination){Common.AddColumns(dt, tb_ProductType.ProductTypeID, tb_ProductType.ProductTypeName);displayMember = Common.DefNewColName;}DataBinder.BindingCheckedComboBoxSource(lue, dt, displayMember, tb_ProductType.ProductTypeID);}

?

在frm_Product的Load事件中添加數據源綁定

private void frm_Product_Load(object sender, EventArgs e){_SummaryView = gv_Summary;gv_Summary.OptionsView.ColumnAutoWidth = false;//_bll = new bllBusiness(typeof(tb_Product),"P",4);_bll = new bllBusiness<tb_Product>("P", 4, typeof(tb_ProductPrice));//添加只讀列base.AddControlsOnlyRead(txtCreateUser,txtCreateDate,txtLastUpdateUser,txtLastUpdateDate);//只有新增狀態下才可用base.AddControlsOnAddKey();this.BoundDatasource();}private void BoundDatasource(){DataBinderTools.Bound.BoundUserName(lue_UserName);DataBinderTools.Bound.BoundUserName(txtCreateUser);DataBinderTools.Bound.BoundUserName(txtLastUpdateUser);DataBinderTools.Bound.BoundProductType(txt_ProductType, false, true);DataBinderTools.Bound.BoundProductType(txtProductTypeID, true, true);}

重寫ValidateBeforSave方法,用于保存前驗證

//保存前數據驗證protected override bool ValidateBeforSave(){bool Validate = true &CommonTools.IsNotEmpBaseEdit(txtProductName, "產品名稱不能為空!")& CommonTools.IsNotEmpBaseEdit(txtProductTypeID, "產品類別編號不能為空!")& CommonTools.IsNotEmpBaseEdit(txtProductPrice, "默認價格不能為空!");//if (Validate == false) return;if (Validate == true)EditData.Tables[tb_Product._TableName].Rows[0][tb_Product.ProductTypeName] = (txtProductTypeID.GetSelectedDataRow() as DataRowView).Row[tb_ProductType.ProductTypeName];return Validate;}

?

重寫SetControlAccessable方法,修改狀態改變的時候

/// <summary>/// 設置按鈕可用狀態,如果已經在ControlOnlyReads或SetControlAccessable中添加,這里不需要重新設置/// </summary>/// <param name="Edit"></param>protected override void SetControlAccessable(bool Edit){//LibraryTools.SetControlAccessable(tp_Edit, Edit);base.SetControlAccessable(Edit);gv_Detail.OptionsBehavior.Editable = Edit;}

?

完成以后運行重新加載模塊,測試功能

?

?

添加商品到此完結

?

關于GZFramwork快速開發框架

作者:GarsonZhang? QQ:382237285

唯一QQ交流群:288706356

歡迎提出您的寶貴意見

轉載于:https://www.cnblogs.com/GarsonZhang/p/4321823.html

總結

以上是生活随笔為你收集整理的GZFramwork快速开发框架演练之会员系统(四)添加商品管理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。