iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Winform和WPF下如何调用ComponentOne的控件
  • 318
分享到

Winform和WPF下如何调用ComponentOne的控件

2023-06-03 09:06:18 318人浏览 薄情痞子
摘要

这篇文章主要为大家展示了“winform和WPF下如何调用ComponentOne的控件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“WinfORM和WPF下如何调用ComponentOne的控

这篇文章主要为大家展示了“winformWPF下如何调用ComponentOne的控件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“WinfORM和WPF下如何调用ComponentOne的控件”这篇文章吧。

Step 1

首先,我们还是把两个平台的基本通信通道搭建起来,很简单,网上有很多步骤,总结起来主要分三步:

  1. 添加两个引用:windowsFormsIntegration.dll(负责整合WPF和Windows)、System.Windows.Forms.

  2. 在 XAML文件中添加两个引用(粗体部分):

 <Window x:Class="CrossBowDemo.MainWindow"xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"xmlns:wf ="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"xmlns="Http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="Hosting Windows Forms Control In WPF"Height="300"Width="650"ResizeMode="NoResize"Loaded="WindowLoadedHandler"> < /Window>

解释一下,这段代码真正起作用的是这个引用WindowsFormsIntegration.dll,而这个引用System.Windows.Forms 指的是Winform里面的微软的原生态控件,所以在用到ComponentOne时,可以不引用它。

我们先看一个示例:通过微软原生态控件在WPF中使用Winform,代码如下:

<wfi:WindowsFormsHost>        <wf:DataGridView x:Name="Dg"  Dock="Fill" SelectionMode="FullRowSelect">                    </wf:DataGridView>    </wfi:WindowsFormsHost>

WindowsFormsHost其实是Winform在WPF的容器,所以Winform的控件显示都要在这个容器里面。

Setp2

上面我们说了,我们以FlexReport为介质进行通信,那我们需要准备的几个小步骤:

  1. Winform下FlexReport的模板

  2. 相关引用

Winform和WPF下如何调用ComponentOne的控件

注意:这里面的引用是Winform的引用。同样,我们需要在xmal中引用:

xmlns:cc11="clr-namespace:C1.Win.FlexViewer;assembly=C1.Win.FlexViewer.4"

在布局中添加可供报表预览的控件

<Grid>        <wfi:WindowsFormsHost>            <cc11:C1FlexViewerPane   x:Name="flexViewerPane"  ></cc11:C1FlexViewerPane>        </wfi:WindowsFormsHost>    </Grid>

Setp3

我们在后台加载报表

private C1FlexReport _report;    public Window1()    {        InitializeComponent();        _report = new C1FlexReport(); // load report definition from resources        Assembly asm = Assembly.GetExecutingAssembly();         using (Stream stream = asm.GetManifestResourceStream("WpfApp1.Resources.FlexCommonTasks.flxr"))            _report.Load(stream, "Chart2D");        // assign report to the preview pane        flexViewerPane.DocumentSource = null;        flexViewerPane.DocumentSource = _report;    }

注:切记,这里面的报表是Winform平台下的

到这一步,我们工作完成了一大半,还差最后一步点石成金的步骤。很多人以为在这就结束了,但是我们要考虑 ComponentOne License 授权的问题,如何把Winform 的授权在WPF下注册,其实很简单,因为 .net 的license机制一样,我们只需用同样的方式去注册控件的license ,不过这里推荐手动注册,这很重要,因为一不小心,就会报lc.exe=-1的错误

这里我们都用到了

  • C1FlexViewerPane

  • C1FlexReport

所以我们在license文件中写如下注册信息

C1.Win.FlexReport.C1FlexReport, C1.Win.FlexReport.4 C1.Win.FlexViewer.C1FlexViewerPane, C1.Win.FlexViewer.4

至此,我们就大功告成了。

以上是“Winform和WPF下如何调用ComponentOne的控件”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: Winform和WPF下如何调用ComponentOne的控件

本文链接: https://www.lsjlt.com/news/233931.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Winform和WPF下如何调用ComponentOne的控件
    这篇文章主要为大家展示了“Winform和WPF下如何调用ComponentOne的控件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Winform和WPF下如何调用ComponentOne的控...
    99+
    2023-06-03
  • winform怎么调用wpf控件
    要在WinForm中调用WPF控件,可以按照以下步骤进行操作:1. 在WinForm项目中添加对WPF的引用。右击项目 -> 添加 ...
    99+
    2023-10-20
    winform wpf
  • WPF中用户控件和自定义控件如何使用
    本篇内容主要讲解“WPF中用户控件和自定义控件如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“WPF中用户控件和自定义控件如何使用”吧!介绍无论是在WPF中还是WinForm中,都有用户控...
    99+
    2023-07-05
  • winform如何传值给用户控件
    在WinForm中,可以通过以下几种方式将值传递给用户控件:1. 属性传值:在用户控件中定义一个公共属性,通过设置属性的值来传递数据...
    99+
    2023-09-09
    winform
  • 详解WPF中用户控件和自定义控件的使用
    目录介绍用户控件自定义控件按钮案例自定义控件中常用的知识点介绍 无论是在WPF中还是WinForm中,都有用户控件(UserControl)和自定义控件(CustomControl)...
    99+
    2023-03-02
    WPF用户控件 自定义控件 WPF用户控件 WPF 自定义控件 WPF 控件
  • WPF双滑块控件如何使用和强制捕获鼠标事件焦点
    这篇文章主要介绍了WPF双滑块控件如何使用和强制捕获鼠标事件焦点的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇WPF双滑块控件如何使用和强制捕获鼠标事件焦点文章都会有所收获,下面我们一起来看看吧。效果代码部分需...
    99+
    2023-07-02
  • Linux系统下如何监控和调整机器温度
    这篇文章主要介绍“Linux系统下如何监控和调整机器温度”,在日常操作中,相信很多人在Linux系统下如何监控和调整机器温度问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux系统下如何监控和调整机器温度...
    99+
    2023-06-10
  • 如何调用com.android.settings下的InstalledAppDetails
    要调用com.android.settings下的InstalledAppDetails,您可以使用以下步骤:1. 创建一个Inte...
    99+
    2023-09-16
    android
  • 详解WPF双滑块控件的使用和强制捕获鼠标事件焦点
    目录效果概述代码部分效果 概述 最近有个小需求要用双滑块表示一个取值范围,于是就简单做了个用户控件,在此记录下. 使用矩形Rectangle表示范围,椭圆Ellipse表示滑块,使...
    99+
    2024-04-02
  • 如何监控和调优Oracle的性能指标
    监控和调优Oracle性能指标是保障数据库系统正常运行的重要工作。以下是一些常用的方法: 监控工具:Oracle提供了多种监控工...
    99+
    2024-04-09
    Oracle
  • HTML5中 progress和meter控件如何使用
    本篇文章给大家分享的是有关HTML5中 progress和meter控件如何使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在HTML5中,...
    99+
    2024-04-02
  • 如何监控和调优Cassandra数据库的性能
    要监控和调优Cassandra数据库的性能,可以使用以下方法: 使用监控工具:使用监控工具如DataStax OpsCenter...
    99+
    2024-04-09
    Cassandra
  • 如何在Android中使用Spinner下拉菜单控件
    这期内容当中小编将会给大家带来有关如何在Android中使用Spinner下拉菜单控件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。activity_main.xml<xml versio...
    99+
    2023-05-30
    android spinner
  • 如何使用Java日志来监控和调试缓存问题?
    在软件开发中,缓存是一个非常常见的概念。它可以帮助我们提高应用程序的性能,减少数据库或其他存储系统的负载。但是,缓存也可能会导致一些问题。当缓存出现问题时,我们需要及时发现并解决它们。在本文中,我们将介绍如何使用Java日志来监控和调试缓...
    99+
    2023-08-14
    缓存 日志 npm
  • 如何探究IE和Firefox下的2款HTTP调试工具用法
    如何探究IE和Firefox下的2款HTTP调试工具用法,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。你对IE浏览器和Fire...
    99+
    2024-04-02
  • Qt中的QStackedWidget控件如何使用
    本文小编为大家详细介绍“Qt中的QStackedWidget控件如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Qt中的QStackedWidget控件如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-05
  • 如何正确的使用ComboBox 控件
    本篇文章给大家分享的是有关如何正确的使用ComboBox 控件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  一、ComboBox 控件的常用属性:  1、BackColor...
    99+
    2023-06-08
  • 如何用vb.net通过treeview控件显示文件夹下所有文件列表
    您可以使用以下代码来实现通过TreeView控件显示文件夹下所有文件列表的功能:```Private Sub PopulateTre...
    99+
    2023-08-19
    vb.net
  • Bash命令行下如何调用Java API实现文件操作?
    Bash是一个常见的Unix Shell,而Java则是一门跨平台的编程语言。它们分别在不同领域有着广泛的应用。但是,在某些情况下,我们需要在Bash命令行下调用Java API来完成一些操作,比如文件操作。那么,该如何实现呢?本文将为您...
    99+
    2023-10-27
    api django bash
  • php如何调用文件类的方法
    要调用一个文件类的方法,首先需要先创建一个该类的实例对象,然后通过该对象调用相应的方法。以下是一个示例代码:```php```在上述...
    99+
    2023-10-09
    php
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作