使用C#开发C/S框架高级版添加新项目实例
操作步骤:
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框架高级版添加新项目实例的更多相关文章
- PHP框架Yii2.0安装(基础版、高级版)
最近农成也是切入了yiiframework 2.0,就是安装yii2.0就花费了不少的时间,为此做了很多的弯路,特此写一篇博文来给后面学习的同学少走一点的弯路.写的不好的地方欢迎各位学习的同学们能够指 ...
- 《实战突击:PHP项目开发案例整合(第2版)(含DVD光盘1张)》
<实战突击:PHP项目开发案例整合(第2版)(含DVD光盘1张)> 基本信息 作者: 徐康明 辛洪郁 出版社:电子工业出版社 ISBN:9787121221378 上架时间:2014 ...
- 招聘:web前端开发(中级、高级均可)
web前端开发(中级.高级均可) 工作地点:广东-深圳 工作年限:2年 学历要求:本科 招聘分类:前端开发工程师 工资范围:面议 招聘人数:3 发布日期:2014/07/29 截止日期:2014/08 ...
- 关于web开发前端h5框架的选择
关于web开发前端h5框架的选择 看了很多移动版框架都是基于app混合式开发的,不是单独h5网站的基于h5开发的web框架从组件丰富度,兼容性,相关教程来说bootstrap还是最好的react和vu ...
- 流风ASP.NET框架商业版-工作流1.0简介
流风ASP.NET框架商业版-工作流1.0简介 工作流简介 在流风ASP.NET框架商业版1.0推出后,就有集成工作流的想法,但是由于工作繁忙和其他事情的耽搁,时隔半年之久工作流1.0的版本才姗姗来迟 ...
- 宣布正式发布 Biz Talk Services、Azure Active Directory 和 Traffic Manager, 同时发布 Azure Active Directory 高级版预览
除经济优势之外,云计算还在可转化为竞争优势的应用程序开发方面提供了更大的灵活性.我们很高兴看到每天创建的新 Windows Azure 订阅超过 1000 个,更令人兴奋的是,有一半客户使用价值更高的 ...
- 《Linux设备驱动开发具体解释(第3版)》进展同步更新
本博实时更新<Linux设备驱动开发具体解释(第3版)>的最新进展. 2015.2.26 差点儿完毕初稿. 本书已经rebase到开发中的Linux 4.0内核,案例多数基于多核CORTE ...
- PHP和MySQL Web开发(原书第4版) 高清PDF+源代码
PHP和MySQL Web开发(原书第4版) 高清PDF+源代码 [日期:2014-08-06] 来源:Linux社区 作者:Linux [字体:大 中 小] 内容简介 <PHP和My ...
- Laravel开发:Laravel框架门面Facade源码分析
前言 这篇文章我们开始讲 laravel 框架中的门面 Facade,什么是门面呢?官方文档: Facades(读音:/fəˈsäd/ )为应用程序的服务容器中可用的类提供了一个「静态」接口.Lara ...
随机推荐
- 微信H5支付网络环境未能通过安全验证,请稍后再试(获取终端ip )
在写微信H5支付的时候需要获取终端IP使用官方的方法是不对的报错如下: 故重写一个:如下 function get_client_ip(){ if(getenv('HTTP_CLIENT_IP') & ...
- IO (三)
1 转换流 1.1 InputStreamReader 1.1.1 InputStreamReader简介 InputStreamReader是字节流通向字符流的桥梁.它使用指定的charset读取字 ...
- 仿百度糯米TP5项目笔记
需求分析 系统三大模块 商家平台.主平台.前台模块 Thinkphp5.0实战 仿百度糯米开发多商家电商平台网盘下载 (2017-04-24 01:46:23) 转载▼ 第1章 课程简介 本章 ...
- html页面不显示中文
问题:HTML编辑中文后无法在网页上显示中文 原因:是适用的 Cufon字体包不支持中文造成的. 简单粗暴的解决方法:如果你本来打算是去掉Cufon,可以看一看<如何禁用Cufon功能>. ...
- JQuery 纵向二级菜单与对齐方式
1.效果: 2.代码: style部分: <style type="text/css"> /* ul{margin: 0; padding: 0;}*/ ul{list ...
- struts2--实现自定义拦截器
前言: 本篇文章,我想说清实现拦截器的办法,还有为什么要这样做: 目录: 1.需求目的 2.实现步骤及原理(文字怕描述不清,画图描述) 3.代码 4.总结 一.需求目的 规范或限制越级访问(例如:一个 ...
- jQuery中的DOM操作------复制及包裹节点
1.复制节点: 如果单击<li>元素后需要再复制一个<li>元素,可以用clone()方法来完成: $(this).clone().appendTo("ul" ...
- 使Tomcat指向指定的JDK目录
1,修改bin文件夹下面的catalina.bat文件,把如下内容 rem ----- Execute The Requested Command -------------------------- ...
- BZOJ 2743: [HEOI2012]采花 [树状数组 | 主席树]
题意: 查询区间中出现次数$>2$的颜色个数 一眼主席树,区间中$l \le last[i] \le r$的个数减去$l \le last[last[i]] \le r$的个数,搞两颗主席树来做 ...
- Codevs 3990 [中国剩余定理]
模板题 注意如何得到[a,b]区间范围内的解 #include <iostream> #include <cstdio> #include <cstring> #i ...