,技术专题   工具软件   办公软件   操作系统   网络安全   设计在线   程序开发   教程宝典   软件下载   软件论坛,技术专题
您的位置:Yesky > 软件 > 业界资讯 > 正文
Visual Studio 2005窗体配置文件
[文章信息]
作者:陶刚编译
时间:2005-05-25
出处:天极网
责任编辑:方舟
[文章导读]
本文聚焦于简单的桌面应用程序,该应用程序的唯一目的是显示和修改自己的配置文件的内容
advertisement
热点推荐
· 图文详解:黑客入侵方式演示
· Java异常处理的陋习展播
· 多媒体系列教程:网页设计制作
· Powerpoint动画演示教程连载
· 光盘刻录手册:禁忌与技巧(下)
[正文]

上一页  1 2  

  枚举配置属性

  ThisConfigEditor的显示的核心是ThisConfigEditor.cs代码文件中的私有的PopulateListView方法:

private void PopulateListView()
{
 ListViewItem item = null;

 this.buttonUpdateSetting.Enabled = false;
 this.textBoxSettingValue.Enabled = false;
 this.listViewSettings.Items.Clear();

 Properties.Settings settings = Properties.Settings.Default;

 foreach (SettingsProperty property in settings.Properties)
 {
  bool match = false;

  switch (_dt)
  {
   case DisplayType.All:
    match = true;
    break;

   case DisplayType.Application:
    foreach (System.Collections.DictionaryEntry attribute in property.Attributes)
    {
     if (attribute.Value is System.Configuration.ApplicationScopedSettingAttribute)
     {
      match = true;
      break;
     }
    }
    break;

   case DisplayType.User:
    foreach (System.Collections.DictionaryEntry attribute in property.Attributes)
    {
     if (attribute.Value is System.Configuration.UserScopedSettingAttribute)
     {
      match = true;
      break;
     }
    }
    break;
   }

   if (match)
   {
    item = new ListViewItem(property.Name);
    item.SubItems.Add(new ListViewItem.ListViewSubItem(item, property.PropertyType.ToString()));
    item.SubItems.Add(new ListViewItem.ListViewSubItem(item, settings[item.Text] as string));
    item.Tag = property;
    this.listViewSettings.Items.Add(item);
   }
  }
 }

  通过判断私有枚举字段_dt(它与窗体中的组合框的选择相关联,该组合框用于选择显示哪些配置属性:全部的、应用程序的或者用户的),代码枚举出配置属性。集合中的每个成员都是一个SettingProperty实例(System.Configuration API中的另外一个新类,用于表现独立的配置属性),它也包含一个DictionaryEntry实例集合,用于表示它们的多个属性。通过在属性集合上进行迭代操作,代码搜索出与组合框中选择的范围相匹配的属性。在匹配到之后,代码显示通过建立一个新的ListViewItem并把它添加到窗体的ListView上,从而显示配置属性。

  我们的修改到哪儿去了?

  因此,在浏览了这些代码并运行该应用程序之后你可以看到ThisConfigEditor.exe.config文件中的不同配置设置信息。为了理解配置框架组件是如何工作的,我们来看一下当你改变一个User范围设置(图6所示)的时候发生了什么事情。


图6:改变User范围的设置信息

  改变的设置信息没有保存到应用程序的配置文件中;作为代替,该API在用户的配置(profile)中为应用程序建立了一个新目录(如果这个目录并不存在才建立),在这个目录中增加了一个叫做user.config的文件(图7所示)。


图7:新的用户配置文件:.NET框架组件保存的示例应用程序的新的用户配置文件的位置

  采用这种方法分离数据,通过使用户特定的数据与用户保持关联,保护了应用程序配置文件的完整性。而且,.NET框架组件自动地载入用户特定的内容而不需要开发者来干涉。请注意,最后的一个目录与应用程序的版本号相对应。这确保了当某个属性的数据类型发生改变的时候,应用程序的延续版本将维护它们独立的完整性而不会相互干扰。

  精简框架组件又落后了

  Pocket PC上的精简框架组件的实现有时候看起来不受.NET世界的重视。它的1.0版本的实现没有为System.Configuration名称空间和注册表做任何准备。2.0的beta版文档在System.Configuration名称空间中出现了每个类实体的精简框架组件,就像beta文档中的所有名称空间中的大量类的实现方法一样,但是现在是不支持的。

  人们只能希望这只是新的.NET平台的一个短暂的阶段,并且最后的发布版支持与桌面版相同的能力。

上一页  1 2  

发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
天极社区邀请您:写博客日记  上传相片   论坛聊天  订阅电子杂志  推荐网摘   免费图铃工具
笔名:   请您注意:

 遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。

 天极网拥有管理笔名和留言的一切权利。
评论:
 
,技术专题相关内容,技术专题焦点新闻
  • VS.NET2005 Beta2初体验
  • 体验VS.NET 2005的winform新功能
  • 体验Visual Studio.NET 2005 Beta2
  • VS.NET中构建数据库应用程序
  • 探秘Visual Studio.Net 2003
  • FVD刺激高清碟机加速商业化 抢占商机最重要
  • 3家搜索引擎集体诉讼8848 吕春维未敢出席
  • 杨元庆:没有准备不会获批的备用方案
  • 军队信息化诞生新领域 电子军务呼之欲出
  • 世界经济论坛公布信息化程度全球最新排名
  • 2004政务绩效评估:政府门户尚处于发展阶段
  • 甲骨文出资5.15亿美元 意图收购RetekInc
  • 技术并购:帮你突破传统增长的“天花板”
  • ,技术专题Advertisement