devExpress 示例分析

我们来看这个例子:


Components\WinForms\XtraTreeList\CS\TreeListMainDemo


这个例子很有意思的一点是,启动就显示了,我想拿来给自己用。

看了看代码,让我奇怪得很,


我的第一个反应就是找找字符串,比如"Data Sources"
代码里没有找到,扩大范围之后发现,在一个xml文件里。


  E:\work\AutoPack\Client\DX2011.2.5_src\Sources\DevExpress.DemoData.Win\DevExpress.DemoData.Win\Products\XtraTreeList\MainDemo.xml


    <WinDemoModule Path="TreeListRegViewer" Group="Data Sources" Type="local:TreeListRegViewer">
      <Title>Reg Viewer</Title>
      <Description>This demo shows how to work with the XtraTreeList in unbound mode.</Description>
    </WinDemoModule>


这里有这样一个文件,装着里面的内容

Components\Data\XtraTreeList.xml


这里我还是没有完全搞清楚。


直到把代码全都加进来,进行了跟踪:


namespace DevExpress.DXperience.Demos

		protected virtual void OnLoad(object sender, System.EventArgs e) {
			
			Assembly entryAssembly = Assembly.GetEntryAssembly();
			if(entryAssembly == null) return;
			object[] attributes = entryAssembly.GetCustomAttributes(typeof(ProductIdAttribute), false);
			if(attributes.Length == 0)
				throw new Exception("Every demo application must have the ProductId assembly attribute");
			ProductIdAttribute productIdAttribute = (ProductIdAttribute)attributes[0];
			MainFormRegisterDemoHelper.RegisterDemos(productIdAttribute.ProductId);
			FillNavBar();


注意这句:


            Assembly entryAssembly = Assembly.GetEntryAssembly();
            object[] attributes = entryAssembly.GetCustomAttributes(typeof(ProductIdAttribute), false);
          ProductIdAttribute productIdAttribute = (ProductIdAttribute)attributes[0];
            MainFormRegisterDemoHelper.RegisterDemos(productIdAttribute.ProductId);

原来是这样,是根据反射,得到了模块的一个二进制属性,

我们去找找:


TreeListMainDemo 工程 的AssemblyInfo.cs

最后一行:

[assembly: ProductId("XtraTreeList")]

原来如此。

后面就不多说了,只要你能把代码引入,跟踪,就能稿清楚了。
看到rgtister,就知道,要注册一个module




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: WinForm DevExpress是一种基于Windows Forms的用户界面开发工具,它提供了丰富的控件和组件,可以帮助开发人员快速构建现代化、高效的桌面应用程序。它具有良好的可扩展性和灵活性,可以满足各种不同的开发需求。同时,它还提供了丰富的文档和示例,方便开发人员学习和使用。 ### 回答2: WinForms是一种桌面应用程序开发框架,它经常用于开发Windows应用程序。而DevExpress是一家软件公司开发的开发组件库,提供了许多优秀的UI组件和开发工具来帮助WinForms的开发。 其中DevExpress的WinForms套件搭配使用可极大地提高开发速度和质量,它提供了许多高效、强大的组件,如Grid Control、Navigation Bar、TreeList等。这些组件可以用来快速地开发界面简洁、功能完整的.WinForms应用程序,而且这些组件在功能上非常强大,比如Grid Control中的数据过滤、排序操作都非常便捷;Navigation Bar可以将菜单操作变得更加直观和方便。总之,DevExpress的WinForms组件大大减少了WinForms应用程序开发的难度。 而且DevExpress还提供了完整的设计器工具,帮助开发者轻松创建和管理WinForms窗体和控件。系统内置的设计器,可以帮助开发人员在设计和开发过程中快速创建应用程序界面,提供了简单、直观的拖放操作。同时,它提供了适用于开发人员的强大的应用程序性能和代码质量的分析工具,以及集成了许多调试工具,优化了应用程序的性能和稳定性。 总之,使用DevExpress的WinForms套件可以使开发者更加专注于自己的业务逻辑和用户体验,而不必花费大量时间和精力去处理诸如界面布局、控件实现等细节问题上。因此,DevExpress WinForms套件是一个非常值得尝试和学习的框架。 ### 回答3: WinForm是指Microsoft Windows Forms的应用程序框架,用于创建基于Windows用户界面的应用程序。它提供了一种开发.NET桌面应用程序的方式,它使用了.NET的核心技术,比如.NET Framework、C#、Visual Basic,以及应用程序的交互方式大多依赖于PC上的鼠标、键盘等设备。 DevExpress是一个软件开发公司,提供了很多工具和控件来开发.NET桌面应用程序。DevExpress所提供的控件比WinForm自带的控件更加强大,并且使用起来也更加灵活和方便。DevExpress的控件库包含了丰富的UI控件、数据控件、图表控件等等,这些控件都可以帮助开发者快速地创建出高质量的应用程序。 WinForm DevExpress的优势: 1.控件库:DevExpress控件库比WinForm自带的控件更加丰富和强大,可以大大提高开发效率。 2.视觉效果:DevExpress控件的视觉效果比WinForm自带的控件更加美观,可以帮助用户产生更好的视觉体验。 3.易于学习:DevExpress提供了完善的文档和教程,使得开发者可以很快地学习和上手DevExpress控件。 4.兼容性:DevExpress控件可以很好的与其他控件进行兼容,比如WinForm自带的控件、第三方控件等等。 当然,使用DevExpress控件也有一些劣势: 1.价格:DevExpress控件库相对于其他控件库来说价格较高。 2.性能:DevExpress控件的性能比WinForm自带的控件略低,但是这并不会对应用程序的性能造成太大的影响。 总之,WinForm DevExpress是一个强大的桌面应用程序开发框架,使用DevExpress控件可以大大提高开发效率,同时也可以为用户提供更好的视觉体验。虽然价格有些高,但考虑到它的功能和易用性,它仍然是开发这们不容错过的一个利器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值