简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmKnowledge日积月累功能的实现...
用通用权限管理系统组件开发一个简易的日积月累功能的代码实现,运行效果如下效果,很多通用的小功能系统组件自动都实现了,那开发应用程序会变得又快又简单了。
具体代码参考如下:
2 // All Rights Reserved , Copyright (C) 2012 , Hairihan TECH, Ltd.
3 //--------------------------------------------------------------------
4
5 using System;
6 using System.Data;
7 using System.Windows.Forms;
8
9 namespace DotNet.WinForm
10 {
11 using DotNet.Business;
12 using DotNet.Utilities;
13
14 /// <summary>
15 /// FrmKnowledge.cs
16 /// 日积月累
17 ///
18 /// 修改记录
19 ///
20 /// 2012.09.03 版本:1.0 JiRiGaLa 修改功能页面编写。
21 ///
22 /// 版本:1.0
23 ///
24 /// <author>
25 /// <name>JiRiGaLa</name>
26 /// <date>2012.09.03</date>
27 /// </author>
28 /// </summary>
29 public partial class FrmKnowledge : BaseForm
30 {
31 public FrmKnowledge()
32 {
33 InitializeComponent();
34 }
35
36 /// <summary>
37 /// 日积月累的知识库
38 /// </summary>
39 DataTable dtKnowledge = null;
40
41 /// <summary>
42 /// 当前显示第几条
43 /// </summary>
44 int CurrentIndex = 0;
45
46 #region public override void ShowEntity() 显示内容
47 /// <summary>
48 /// 显示内容
49 /// </summary>
50 public override void ShowEntity()
51 {
52 // 显示信息
53 BaseCommentEntity commentEntity = new BaseCommentEntity(dtKnowledge.Rows[this.CurrentIndex]);
54 this.txtContents.Text = commentEntity.Contents;
55 }
56 #endregion
57
58 public override void SetControlState()
59 {
60 if (this.dtKnowledge != null && this.dtKnowledge.Rows.Count > 0)
61 {
62 this.btnNext.Enabled = true;
63 if (this.CurrentIndex == this.dtKnowledge.Rows.Count - 1)
64 {
65 this.btnNext.Enabled = false;
66 }
67 this.btnPrevious.Enabled = true;
68 if (this.CurrentIndex == 0)
69 {
70 this.btnPrevious.Enabled = false;
71 }
72 }
73 }
74
75 #region public override void FormOnLoad() 加载窗体
76 /// <summary>
77 /// 加载窗体
78 /// </summary>
79 public override void FormOnLoad()
80 {
81 // 获取数据
82 SQLBuilder sqlBuilder = new SQLBuilder(this.UserCenterDbHelper);
83 sqlBuilder.BeginSelect("BaseKnowledge");
84 // 只获取前200个数据就可以了,减小网络传递数据的网络带宽。
85 sqlBuilder.SelectTop(200);
86 if (!string.IsNullOrEmpty(this.EntityId))
87 {
88 sqlBuilder.SetWhere(BaseCommentEntity.FieldId, this.EntityId);
89 }
90 // 这里是为了每次显示的数据都是乱序的,数据测循序是被打乱的。
91 sqlBuilder.SetOrderBy( " NEWID() ");
92 dtKnowledge = sqlBuilder.EndSelect();
93 if (dtKnowledge.Rows.Count > 1)
94 {
95 this.CurrentIndex = new Random().Next(0, dtKnowledge.Rows.Count - 1);
96 }
97 // 显示实体
98 this.ShowEntity();
99
100 // 显示日积月累
101 string showKnowledge = DotNetService.Instance.ParameterService.GetParameter(BaseSystemInfo.UserInfo, "User", "ShowKnowledg", "Show");
102 if (!string.IsNullOrEmpty(showKnowledge))
103 {
104 this.chkShowKnowledge.Checked = showKnowledge.Equals(true.ToString());
105 }
106 }
107 #endregion
108
109 private void chkShowKnowledge_CheckedChanged(object sender, EventArgs e)
110 {
111 if (this.FormLoaded)
112 {
113 DotNetService.Instance.ParameterService.SetParameter(BaseSystemInfo.UserInfo, "User", "ShowKnowledg", "Show", this.chkShowKnowledge.Checked.ToString());
114 }
115 }
116
117 private void btnPrevious_Click(object sender, EventArgs e)
118 {
119 if (this.CurrentIndex > 0)
120 {
121 this.CurrentIndex--;
122 this.ShowEntity();
123 }
124 this.SetControlState();
125 }
126
127 private void btnNext_Click(object sender, EventArgs e)
128 {
129 if (this.CurrentIndex < this.dtKnowledge.Rows.Count -1)
130 {
131 this.CurrentIndex++;
132 this.ShowEntity();
133 }
134 this.SetControlState();
135 }
136
137 private void btnColse_Click(object sender, EventArgs e)
138 {
139 this.Close();
140 }
141 }
142 }
转载于:https://www.cnblogs.com/jirigala/archive/2012/09/03/2668820.html
简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmKnowledge日积月累功能的实现...相关推荐
- 简单快速开发C\S架构程序用最简单的不分层最快的效率
用通用权限管理系统组件开发一个简易的日积月累功能的代码实现,运行效果如下效果,很多通用的小功能系统组件自动都实现了,那开发应用程序会变得又快又简单了. 具体代码参考如下: 1//---------- ...
- 简单Android app开发_如何简单快速开发外卖app?
如何开发一个外卖app?app开发需要多少钱?随着美团.饿了么的外卖app的发展,对餐饮.生鲜果蔬.超市便利店行业来说,app成为必不可缺少的一部分.与其向第三方交纳一定不开发一个自己的外卖平台.也有 ...
- 使用云数据库,国庆快速开发一个微信小程序
国庆七天,如果不想峡谷.王者七日游,就来跟我一起开发个小程序吧,不需要多高的技术,只要你会一点点前端css.html知识,不需要你了解后端语言,更不需要单独部署一个后端服务,十分简单! 之前我写过一个 ...
- 利用Vue-cli3简单快速搭建前端项目架构
安装 如果在电脑上已经安装了vue-cli2.0如果想要把其替换成vue-cli3.0的话需要先卸载原有vue-cli2.0的版本. npm uninstall vue-cli -g 卸载完成之后就直 ...
- 简单快速清理 联想电脑 顽固可疑程序文件 comup.dll(风险名称: Adware/Hyideo )的方法 PS:该方法对于删除 .dll 文件均有效
注:该方法对删除任何一个.dll文件均有效,请继续阅读. 文章目录 前言 一.删除comup.dll文件 1.方法:下载**Unlocker**软件 2. 关于下载 对于联想电脑用户而言, 对于非联想 ...
- 如何快速开发一个古诗词小程序?
前言: github日常淘宝,看到的项目可能因为历史原因已经不维护了,跑步起来,那么我们就让他跑起来吧! 本篇以一个古诗词小程序为例,大概花了一天的时间,给想学习的小白或者业余你想整一个玩玩的时候能有 ...
- android游戏1024代码,castlegame 可简单快速开发android游戏。我总结的教程
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 安装 fpcupdeluxe-i386-win32.exe 先安装这个. fpc 选择 304版本 即stable 版本 lazarus 选择184版本 ...
- Stduino NanoUno简单快速开发stm32
Stduino Nano&Uno Stduino Nano&Uno 板型均采用Stm32F103c8t6芯片作为主控芯片 Stduino Nano&Uno 板型均采用Stm32 ...
- 使用.NET Core快速开发一个较正规的命令行应用程序
程序员的世界,命令行工具一直是"体验非常友好"的工具,也能自动化完成很多事情,同时还能结合shell来进行某项任务的批处理(脚本).在.NET Core中,命令行应用程序是基础,但 ...
最新文章
- HyperPocket:生成点云网络
- php正则如何使用 1,请问正则里面的值${1}怎么使用函数处理?怎么个写法?
- MySQL在创建索引之前一定要想到的事情
- POJ1321 棋盘问题(DFS)
- Linux内核——百度百科
- ArcGis10安装步骤
- 【论文解读】ICLR 2021 |可信多模态机器学习:兼听则明,信而有征
- Git之深入解析如何使用Git的分布式工作流程与如何管理多人开发贡献的项目
- window10系统 同时安装支持 jdk 1.7和1.8环境
- Linux——userdel删除用户不完全问题
- MySQL的索引创建、删除
- oracle 12c sp2 0667,关于数据库安装的问题SP2-0667: Message file sp1.msb not found
- hp1015驱动64位_惠普1015打印机驱动下载
- Labwindows_cvi基于C语言程控矢量网络分析仪
- 综合练习:热点事件排行榜(页面使用的是thymeleaf)
- 基于ESP8266芯片的实时温湿度传感器
- C# 读取SQLite
- PDF文件怎么转换成Word?这几种方法原来这么简单
- nginx根据post请求体内容转发
- Odoo隐藏应用模块