1.7 用户信息管理模块设计
视频讲解
1.7.1 用户信息管理模块概述
用户信息管理模块主要用于管理用户信息。其中包括两种用户类型,即出租方和求租方。如果出租方仅仅提供个人基本信息而没有提供房源信息,则可以通过本系统提供的垃圾信息清理机制将其清除。用户信息管理窗体运行结果如图1.22所示。
图1.22 用户信息管理窗体
1.7.2 用户信息管理模块技术分析
本模块提供了查询“出租人”和“求租人”的功能,并且可以通过设置多个查询条件来查询,这就需要动态设置具有查询功能的SQL语句,本实例使用StringBuilder类的Append()方法来实现动态连接SQL语句,该方法的重载形式有多种,本模块用到的语法格式如下:
public StringBuilder Append(string value);
value:要追加的字符串。
返回值:完成追加操作后对StringBuilder类型实例的引用。
该Append()方法实现在StringBuilder类型实例的结尾追加指定字符串的副本。
例如,下面的代码实现根据客户编号、客户名称、客户电话号码等多个条件实现动态查询“求租人”或“出租人”记录。
1.7.3 用户信息管理模块实现过程
本模块使用的数据表:tb_User
用户信息管理模块的具体实现步骤如下。
(1)新建一个Windows窗体,命名为frmPeopleList.cs,用于设置用户信息。该窗体主要用到的控件及属性设置如表1.9所示。
表1.9 用户信息管理窗体主要用到的控件
(2)声明局部变量及公共类ClsCon的对象,通过该对象调用类中的方法,以实现数据库连接,代码如下:
例程11 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
在frmPeopleList窗体的Load事件中,通过调用自定义ListInfo()方法对DataGridView控件进行数据绑定,显示所有系统用户信息。窗体Load事件的关键代码如下:
例程12 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
代码贴士
❶ 在加载时为StringBuilder对象sbSql赋初值。
❷ 在加载时控制选项卡中的TextBox控件。
自定义UnAble()方法,主要用来批量设置容器控件中相关控件的Enabled属性。代码如下:
例程13 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
自定义ListInfo()方法,该方法接受查询语句,用来将查询结果绑定到ListView控件。代码如下:
例程14 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
单击listView控件中的任一单元格,将对应的详细客户信息显示在相应选项卡的文本框中。实现代码如下:
例程15 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
当用户选择“出租人”选项卡或“求租人”选项卡时,在相应的选项卡页中显示客户信息。实现代码如下:
例程16 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
单击“删除”按钮,删除相关的客户信息,同时自动调用触发器trig_delete_tbUser,删除出租人所提供的房源信息。程序中实现代码如下:
例程17 代码位置:资源包\TM\01\houseAgency\UserInfor\frmPeopleList.cs
说明
有关触发器的代码可参见本书资源包。