- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
文档3:XtraLayout让软件用户拥有自己个性化的界面
作者:李福红
工作单位:河南省鹤壁市鹤壁工贸学校计算机教研室
联系地址:河南省鹤壁市淇滨区兴鹤大街南段鹤壁工贸学校
邮编:458030
Email:hebiziyu@126.com ;hebilifuhong@126.com
联系电话XtraLayout让软件用户拥有自己个性化的界面
----DevExpress For VS.Net 高级技巧系列(三)
李福红
摘要:DevExress控件是VS.net开发中应用最广、效果最出众的控件包之一,这里我们尝试用具体实例来介绍它的一些高级用法。
关键词:DevExpress控件;运行时动态设置;XtaLayout技巧;个性化软件界面;
正文:
DevExpres产品全球享有极高声誉的一流控件套包产品!XtraLayoutControl可以帮助我们快速的创建漂亮的界面,从控件的自动排版到分辨率独立,XtraLayoutControl提供一套全面的表单设计特征集。XtraLayoutControl
开发环境:VS2010 C#,Access,DevExpress 控件包 V10.1.5。
示例软件运行环境:.netframework2.0,windows xp/windows2003/windows7/Access2003。
要实现用户界面的个性化定义,我们不妨来看看通常需要考虑哪些因素是必要的。首先、既然是用户个性化设置,自然少不了用户姓名(或用户账号);其次,目前绝大多数软件都有一套权限机制,自定义用户界面作为涉及到系统级的设计、自然也少不了权限的机制;第三,对于软件开发而言,一个窗体经过处理从而作为多种应用界面的情况屡见不鲜(这也是软件设计中的一个基本方针了),所以,自定义用户界面数据的存储、应该考虑的是最终呈现给用户时显示的窗体标题而不是设计期间的窗体名称;第四,既然是要保存XtraLayout的界面设置信息,我们需要知道保存的是哪一个XtraLayout,也就是控件的名称。有了这些因素,我们就可以来设计我们需要的用于保存界面设置信息的数据库表结构了。来看下面的表格:
记录号 窗体标题 用户 权限 控件名称 界面流信息 ID FormName UserName FormPower FormComent FormStream 用于标识不同的记录 用于区分每一个不同的应用界面 用于区分用户 不同权限 个性化设置的控件容器名称 具体的界面设置信息,通常以内存流的形式保存 用自增字段或guid字符串类型 字符型,通常50个汉字足够用 字符型,长度20 字符型,考虑到有些应用存在多种权限组合,可定义为256长度 字符型,200长度一般够用了 长文本。 有了以上的信息,我们就可以以此建立需要的数据表了,详细的建表脚本,我们这里就不说了,示例程序中有access数据库,表名称为:Sys_UIStream,朋友们可自行查看。
准备好了数据库,我们来看看XtraLayout控件是否能满足我们的需要。
XtraLayout控件有一个保存的方法,在代码智能提示中我们可以看到该方法的三个重载:
layoutControl1.SaveLayoutToXml(string sXMLFileName);——保存Layout布局到 XML 文件;
layoutControl1.SaveLayoutToRegistry(string sRegPath); ——保存Layout布局到 系统注册表;
layoutControl1.SaveLayoutToStream(myStream); ——保存Layout布局到 内存流;
考虑到我们的要求、xml和注册表的方法我们放弃,内存流是无法直接写入到数据库的,不过我们可以把内存流数据转换成长字符串(ToBase64String),这样就可以顺利写入数据库了。好了、有了这样的分析结论、我们首先用代码来实现内存流写入数据库的部分功能:
using System;
using System.Data;
using System.IO;
namespace DevControlpractice.LFH.Function
{
public class UIStream_Database
{
/// summary
/// 从数据库读取Layout 界面配置数据流。
/// /summary
/// param name=ProjectName/param
/// param name=IsUpdate/param
/// returns/returns
public static
您可能关注的文档
最近下载
- 高中地理人教版必修 第二册第三章 产业区位因素第三节 服务业区位因素及其变化.pptx
- 医养中心营销策划方案.pdf VIP
- 2025年医疗服务行业人力资源报告:医护人员职业发展现状与趋势.docx
- 电气设备-独家解析-特斯拉4680电池结构与工艺设计-杭州车知知.docx
- 民族团结进步.pptx VIP
- 【OBE课程改革】《统计学》课程教学模式创新与实践.pdf VIP
- 武汉地区区域工程地质及水文地质概况、成井方法、基坑工程连通性抽水试验、降水水位计算与预测、回灌试验技术要求.pdf VIP
- 生产车间5s管理制度.docx VIP
- 【完整版】视频会议系统_本科毕业论文设计.docx VIP
- 国新基金组织架构.docx VIP
文档评论(0)