1. 程式人生 > >使用C#開發C/S框架高級版添加新項目實例

使用C#開發C/S框架高級版添加新項目實例

system log nsa category pla sof tle 生成 ref

操作步驟:

1、新建一個項目CSFramework3.test,在CSFramework3.test項目下新建一個FormMan窗口(此時不需要繼承)。

2、按F7打開類,替換一下引用

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using CSFramework3.Interfaces;
using CSFramework.Library;
using CSFramework.Common;

此時下面三個模塊會報錯,因為框架窗口沒有引用這三個模塊。如圖添加引用

技術分享

CSFramework3.Interfaces 共用 系統接口模塊

CSFramework.Common 共用 公共模塊

CSFramework.Library 不共用 基類庫模塊

3、繼承模塊主窗體基類,把Form換成frmModuleBase

public partial class FormMan : frmModuleBase

技術分享

如果出現設計器報錯,刪除FromMan.Designer中報錯的代碼,因為繼承窗口關系沒有自動生成代碼。如圖

技術分享

4、打開設計頁面,在工具裏搜索MenuStrip 添加一個菜單控件,保存。(如果以上操作沒成功)

5、直接使用繼承窗口創建項目。(刪除沒有成功的項目)

技術分享

技術分享

6、打開設計頁面,在工具裏搜索MenuStrip 添加一個菜單控件,保存。如圖

技術分享

圖中的測試按鈕隨便復制一個過來。menustrip是添加的菜單。

7、下來照樣把上面的引用替換。在初始方法中加入以下紅色的代碼。

public frmDocumentManagementMan()
{
InitializeComponent();


_ModuleID = CSFramework3.Interfaces.ModuleID.DocumentManagement; //設置模塊編號
_ModuleName = ModuleNames.DocumentManagement;//設置模塊名稱


menuStrip1.Text = ModuleNames.DocumentManagement; //與AssemblyModuleEntry.ModuleName定義相同

this.MainMenuStrip = this.menuStrip1;

this.SetMenuTag();
}

正常情況下SetMenuTag();和DocumentManagement會報錯,因為沒有實現它的方法。繼續加入紅色代碼,

DocumentManagement報錯是沒有設置菜單名稱,暫時不管。

public override MenuStrip GetModuleMenu()//為窗口提供菜單系統
{
return this.menuStrip1;
}

private void SetMenuTag()
{
menuOperationMain.Tag = new MenuItemTag(MenuType.ItemOwner, (int)CSFramework3.Interfaces.ModuleID.PurchaseModule, AuthorityCategory.NONE);
btnSales.Tag = new MenuItemTag(MenuType.DataForm, (int)CSFramework3.Interfaces.ModuleID.OperationPlan, AuthorityCategory.MASTER_ACTION);
}

可能menuOperationMain和btnSales會報錯,改成對應的name,菜單name和按鈕name 設計器屬性找。

8、在類中找到ModuleID 按F12

技術分享

技術分享

設置菜單ID和名稱,最後一個不要加逗號。復制tests這個名稱,打開類fromman。把報錯的DocumentManagement換成tests

9、找到這個類打開,修改裏面的引用和代碼。

技術分享

替換引用

using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using CSFramework.Library;
using CSFramework3.Interfaces;
using CSFramework.Core;

替換註意紅色部分

[assembly: AssemblyModuleEntry(ModuleID.tests, ModuleNames.tests, "CSFramework3.test.FormMan")]//這行需要手動添加
[assembly: AssemblyTitle("CSFramework3.test")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Microsoft")]
[assembly: AssemblyProduct("CSFramework3.test")]
[assembly: AssemblyCopyright("Copyright ? Microsoft 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

10、右鍵點擊項目屬性。

技術分享

技術分享

註意紅色部分。聯系QQ78474580

使用C#開發C/S框架高級版添加新項目實例