简单快速开发C\S架构程序用最简单的不分层最快的效率
用通用权限管理系统组件开发一个简易的日积月累功能的代码实现,运行效果如下效果,很多通用的小功能系统组件自动都实现了,那开发应用程序会变得又快又简单了。
具体代码参考如下:
1//--------------------------------------------------------------------
2// All Rights Reserved , Copyright (C) 2012 , Hairihan TECH, Ltd.
3//--------------------------------------------------------------------
4
5using System;
6using System.Data;
7using System.Windows.Forms;
8
9namespace DotNet.WinForm
10 {
11using DotNet.Business;
12using 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>
29publicpartialclass FrmKnowledge : BaseForm
30 {
31public FrmKnowledge()
32 {
33 InitializeComponent();
34 }
35
36///<summary>
37/// 日积月累的知识库
38///</summary>
39 DataTable dtKnowledge = null;
40
41///<summary>
42/// 当前显示第几条
43///</summary>
44int CurrentIndex = 0;
45
46#region public override void ShowEntity() 显示内容
47///<summary>
48/// 显示内容
49///</summary>
50publicoverridevoid ShowEntity()
51 {
52// 显示信息
53 BaseCommentEntity commentEntity = new BaseCommentEntity(dtKnowledge.Rows[this.CurrentIndex]);
54this.txtContents.Text = commentEntity.Contents;
55 }
56#endregion
57
58publicoverridevoid SetControlState()
59 {
60if (this.dtKnowledge != null && this.dtKnowledge.Rows.Count > 0)
61 {
62this.btnNext.Enabled = true;
63if (this.CurrentIndex == this.dtKnowledge.Rows.Count - 1)
64 {
65this.btnNext.Enabled = false;
66 }
67this.btnPrevious.Enabled = true;
68if (this.CurrentIndex == 0)
69 {
70this.btnPrevious.Enabled = false;
71 }
72 }
73 }
74
75#region public override void FormOnLoad() 加载窗体
76///<summary>
77/// 加载窗体
78///</summary>
79publicoverridevoid FormOnLoad()
80 {
81// 获取数据
82 SQLBuilder sqlBuilder = new SQLBuilder(this.UserCenterDbHelper);
83 sqlBuilder.BeginSelect("BaseKnowledge");
84// 只获取前200个数据就可以了,减小网络传递数据的网络带宽。
85 sqlBuilder.SelectTop(200);
86if (!string.IsNullOrEmpty(this.EntityId))
87 {
88 sqlBuilder.SetWhere(BaseCommentEntity.FieldId, this.EntityId);
89 }
90// 这里是为了每次显示的数据都是乱序的,数据测循序是被打乱的。
91 sqlBuilder.SetOrderBy( " NEWID() ");
92 dtKnowledge = sqlBuilder.EndSelect();
93if (dtKnowledge.Rows.Count > 1)
94 {
95this.CurrentIndex = new Random().Next(0, dtKnowledge.Rows.Count - 1);
96 }
97// 显示实体
98this.ShowEntity();
99
100// 显示日积月累
101string showKnowledge = DotNetService.Instance.ParameterService.GetParameter(BaseSystemInfo.UserInfo, "User", "ShowKnowledg", "Show");
102if (!string.IsNullOrEmpty(showKnowledge))
103 {
104this.chkShowKnowledge.Checked = showKnowledge.Equals(true.ToString());
105 }
106 }
107#endregion
108
109privatevoid chkShowKnowledge_CheckedChanged(object sender, EventArgs e)
110 {
111if (this.FormLoaded)
112 {
113 DotNetService.Instance.ParameterService.SetParameter(BaseSystemInfo.UserInfo, "User", "ShowKnowledg", "Show", this.chkShowKnowledge.Checked.ToString());
114 }
115 }
116
117privatevoid btnPrevious_Click(object sender, EventArgs e)
118 {
119if (this.CurrentIndex > 0)
120 {
121this.CurrentIndex--;
122this.ShowEntity();
123 }
124this.SetControlState();
125 }
126
127privatevoid btnNext_Click(object sender, EventArgs e)
128 {
129if (this.CurrentIndex < this.dtKnowledge.Rows.Count -1)
130 {
131this.CurrentIndex++;
132this.ShowEntity();
133 }
134this.SetControlState();
135 }
136
137privatevoid btnColse_Click(object sender, EventArgs e)
138 {
139this.Close();
140 }
141 }
142 }
2// All Rights Reserved , Copyright (C) 2012 , Hairihan TECH, Ltd.
3//--------------------------------------------------------------------
4
5using System;
6using System.Data;
7using System.Windows.Forms;
8
9namespace DotNet.WinForm
10 {
11using DotNet.Business;
12using 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>
29publicpartialclass FrmKnowledge : BaseForm
30 {
31public FrmKnowledge()
32 {
33 InitializeComponent();
34 }
35
36///<summary>
37/// 日积月累的知识库
38///</summary>
39 DataTable dtKnowledge = null;
40
41///<summary>
42/// 当前显示第几条
43///</summary>
44int CurrentIndex = 0;
45
46#region public override void ShowEntity() 显示内容
47///<summary>
48/// 显示内容
49///</summary>
50publicoverridevoid ShowEntity()
51 {
52// 显示信息
53 BaseCommentEntity commentEntity = new BaseCommentEntity(dtKnowledge.Rows[this.CurrentIndex]);
54this.txtContents.Text = commentEntity.Contents;
55 }
56#endregion
57
58publicoverridevoid SetControlState()
59 {
60if (this.dtKnowledge != null && this.dtKnowledge.Rows.Count > 0)
61 {
62this.btnNext.Enabled = true;
63if (this.CurrentIndex == this.dtKnowledge.Rows.Count - 1)
64 {
65this.btnNext.Enabled = false;
66 }
67this.btnPrevious.Enabled = true;
68if (this.CurrentIndex == 0)
69 {
70this.btnPrevious.Enabled = false;
71 }
72 }
73 }
74
75#region public override void FormOnLoad() 加载窗体
76///<summary>
77/// 加载窗体
78///</summary>
79publicoverridevoid FormOnLoad()
80 {
81// 获取数据
82 SQLBuilder sqlBuilder = new SQLBuilder(this.UserCenterDbHelper);
83 sqlBuilder.BeginSelect("BaseKnowledge");
84// 只获取前200个数据就可以了,减小网络传递数据的网络带宽。
85 sqlBuilder.SelectTop(200);
86if (!string.IsNullOrEmpty(this.EntityId))
87 {
88 sqlBuilder.SetWhere(BaseCommentEntity.FieldId, this.EntityId);
89 }
90// 这里是为了每次显示的数据都是乱序的,数据测循序是被打乱的。
91 sqlBuilder.SetOrderBy( " NEWID() ");
92 dtKnowledge = sqlBuilder.EndSelect();
93if (dtKnowledge.Rows.Count > 1)
94 {
95this.CurrentIndex = new Random().Next(0, dtKnowledge.Rows.Count - 1);
96 }
97// 显示实体
98this.ShowEntity();
99
100// 显示日积月累
101string showKnowledge = DotNetService.Instance.ParameterService.GetParameter(BaseSystemInfo.UserInfo, "User", "ShowKnowledg", "Show");
102if (!string.IsNullOrEmpty(showKnowledge))
103 {
104this.chkShowKnowledge.Checked = showKnowledge.Equals(true.ToString());
105 }
106 }
107#endregion
108
109privatevoid chkShowKnowledge_CheckedChanged(object sender, EventArgs e)
110 {
111if (this.FormLoaded)
112 {
113 DotNetService.Instance.ParameterService.SetParameter(BaseSystemInfo.UserInfo, "User", "ShowKnowledg", "Show", this.chkShowKnowledge.Checked.ToString());
114 }
115 }
116
117privatevoid btnPrevious_Click(object sender, EventArgs e)
118 {
119if (this.CurrentIndex > 0)
120 {
121this.CurrentIndex--;
122this.ShowEntity();
123 }
124this.SetControlState();
125 }
126
127privatevoid btnNext_Click(object sender, EventArgs e)
128 {
129if (this.CurrentIndex < this.dtKnowledge.Rows.Count -1)
130 {
131this.CurrentIndex++;
132this.ShowEntity();
133 }
134this.SetControlState();
135 }
136
137privatevoid btnColse_Click(object sender, EventArgs e)
138 {
139this.Close();
140 }
141 }
142 }
本文转自 jirigala 51CTO博客,原文链接:http://blog.51cto.com/2347979/1196196,如需转载请自行联系原作者