简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmKnowledge日积月累功能的实现
2012-09-03 14:51
756 查看
用通用权限管理系统组件开发一个简易的日积月累功能的代码实现,运行效果如下效果,很多通用的小功能系统组件自动都实现了,那开发应用程序会变得又快又简单了。
具体代码参考如下:
1 //--------------------------------------------------------------------
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 }
具体代码参考如下:
1 //--------------------------------------------------------------------
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 }
相关文章推荐
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommentAdd 添加评论的功能实现
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommentEdit 编辑评论的功能实现
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommnetList 所有评论列表的功能实现
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommnets 显示某个对象的评论列表的功能实现
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommnets
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommnetList
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommentEdit
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommentAdd
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmUserEdit 添加评论功能页面效果
- 简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmUserEdit
- 简单快速开发C\S架构程序用最简单的不分层最快的效率
- 收了100元辛苦费,写了一个最简单的C#ASP.NET的3层架构例子代码,源码是通过代码生成器生成的【写程序的效率神奇的高】
- 利用XML配置实现增删改查的.net快速开发架构 简单的构建信息管理系统架构
- 配置实现-适易快速开发架构实现功能总结
- 一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单,随着互联网业务的不断丰富,网站
- c#开发一个“记事本”程序,要求能够实现文件的新建、打开、编辑、保存功能
- Web开发之html2canvas 实现纯JS网页截图简单例子
- Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率..
- (转)【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能!
- Android开发学习之闹钟功能的简单实现