Smobiler基于.NET框架开发移动应用内部系统—周报日志等功能(开发日志四)
2016-03-21 10:24
453 查看
在上一篇博文中讲了Smobiler实现周报日志等功能界面上的实现。今天我们讲一下代码逻辑的编写。
在日报录入界面审阅人是可选择可输入的,如何写选择事件了。在点击审阅人按钮事件中一定要加选择项数据清除的方法(PopList1.Groups.Clear()),若没有加在第二次点击审阅人按钮时选择项数据将重复添加。
选择项已经显示出来了,选择其中某项后赋值给 “审阅人输入框” 。
录入完日志数据后,点击保存按钮,通过ToolbarItemClick事件来保存日志数据
日报录入界面就已经完成了,日报编辑界面事件加载也是一样的。在日报编辑界面中获取日报的值,可以通过load事件来实现。
在日报录入界面审阅人是可选择可输入的,如何写选择事件了。在点击审阅人按钮事件中一定要加选择项数据清除的方法(PopList1.Groups.Clear()),若没有加在第二次点击审阅人按钮时选择项数据将重复添加。
<span style="font-size:14px;">/// <summary> /// 审阅人选择 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <remarks></remarks> private void btnUser_Click(object sender, EventArgs e) { try { PopList1.Groups.Clear(); //清空选择项 //获取数据 frmLeave frmLeave = new frmLeave(Session["UserID"].ID); DataTable table = frmLeave.GetConfirmUser(); PopListGroup poli = new PopListGroup(); PopList1.Groups.Add(poli); poli.Text = "审阅人"; //显示选择列表中key和values foreach (DataRow rowli in table.Rows) { poli.Items.Add(rowli.Item("USER_NAME"), rowli.Item("USER_ID")); if (txtUser.Text.Trim.Length > 0) { //当审阅人输入框值等于选择项中某一项值时设置为默认选中值 if (txtUser.Text.Trim.ToUpper == rowli.Item("USER_ID").ToString.Trim.ToUpper) { PopList1.SetSelections(poli.Items((poli.Items.Count - 1))); } } } PopList1.Show(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }</span>
选择项已经显示出来了,选择其中某项后赋值给 “审阅人输入框” 。
<span style="font-size:14px;">private void PopList1_Selected(object sender, EventArgs e) { if (PopList1.Selection != null) { this.txtUser.Text = PopList1.Selection.Text.Trim; } }</span>
录入完日志数据后,点击保存按钮,通过ToolbarItemClick事件来保存日志数据
<span style="font-size:14px;"> /// <summary> /// Toolbar /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void frmWorkRecordCreate_ToolbarItemClick(object sender, ToolbarClickEventArgs e) { try { //返回 if (e.Name .Equals ( tExit.Name)) { MessageBox.Show("是否确定返回?", MessageBoxButtons.YesNo, (Object s, MessageBoxHandlerArgs args) => { if (args .Result == Smobiler.Core.ShowResult.Yes) { this.Close(); } }); } //保存 if (e.Name .Equals ( save.Name)) { WorkRecordV2 WorkRecord = new WorkRecordV2(Session["UserID"].ID); WorkRecordData WorkRecordData = new WorkRecordData(); WorkRecordData.WR_DATE = Convert.ToDateTime(this.WRDATE.CurrentDate.ToShortDateString); if (this.txtAddress.Text.Trim.Length > 0) { WorkRecordData.WR_ADDRESS = this.txtAddress.Text; } if (this.txtUser.Text.Length > 0) { WorkRecordData.WR_CHECKMEN = this.txtUser.Text; } if (this.txtnote.Text.Length > 0) { WorkRecordData.WR_NOTE = this.txtnote.Text; } WorkRecord.Create(WorkRecordData); MessageBox.Show("日志报创建成功!", () => { ShowResult = Smobiler.Core.ShowResult.Yes; this.Close(); }); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }</span>
日报录入界面就已经完成了,日报编辑界面事件加载也是一样的。在日报编辑界面中获取日报的值,可以通过load事件来实现。
相关文章推荐
- Android Studio快捷键
- JavaScript之链表操作
- 【bzoj2820】【YY的gcd】【莫比乌斯反演】
- 用jquery实现两个div的隐藏与显示
- Java static——拾遗
- Android开发Eclipse常用快捷键
- 实现视图控制器一次 dismissViewController 两个视图控制器
- oracle的sqlldr的使用总结
- 在创建一个Dialog时,发生的错误: Unable to add window -- token null is not for an application
- Python 数据结构与算法——归并排序
- LeetCode-linked-list-cycle-ii
- 设计模式——策略模式
- java总结输入流输出流
- 用户故事驱动的敏捷开发 – 2. 创建backlog
- Jenkins 十二: 集成 selenium 测试
- 2月国内网民地域分布12强:河南网民激增 排名第二
- 机器学习笔记—再谈广义线性模型
- 如何在ScrollView中嵌套ListView
- Linux 常用命令
- 心得:XHB项目