草庐IT

winforms-interop

全部标签

c# - C++ Interop : How do I call a C# class from native C++, 类是非静态的吗?

我有一个用nativeC++编写的大型应用程序。我还有一个C#类需要调用。如果C#类是静态的,那将是微不足道的(网络上有很多示例)-只需编写混合的C++/CLI包装器,导出接口(interface),即可完成。但是,C#类是非静态的,并且不能更改为静态的,因为它有一个接口(interface)(如果您试图将C#类设为静态,编译器将生成错误)。以前有没有人遇到过这个问题-如何将非静态C#类导出到nativeC++?更新2010-11-09最终解决方案:尝试使用COM,效果很好,但不支持结构。所以,我选择了C++/CLI包装器,因为我绝对需要能够在C++和C#之间传递结构。我根据此处的代码

c++ - 为什么 WPF 不像 WinForms 那样支持 C++.NET?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。作为C++坚持者,这确实困扰着我。我一直很喜欢微软大约十年前提出的“语言无关框架”的想法。为什么他们放弃了这个想法?有谁知道背后的原因吗?

c# - 以 C/C++ 作为后端的 WinForms 或 WPF 或 Qt for Windows GUI

我要在Windows上开发一个应用程序。我以前从未这样做过;-)我需要做一些繁重的音频计算,必须用C/C++编写。这部分将是一个房间校正算法,目前在Matlab中运行每个channel大约需要10秒。它必须用C/C++编写,因为它可能稍后被移植到DSP,而DSP必须用C/C++编程。此外,我需要一个GUI来查看计算、可视化结果和修改计算参数。这个GUI的难点在于大量绘制频谱、频谱图、音频波形等。现在,我听说WPF在WindowsGUI中风靡一时,但它似乎仅限于C#。有没有一种简单的方法可以将我的C/C++代码与某些C#GUI代码集成?还是我应该使用WinForms并只用C++编写整个程

c# - 在 C# winforms 中使用 C++ 库

我正在尝试在OpenTK中使用SPARK粒子系统。我的项目包含文件夹中的头文件,只有两个头文件,其中只包含其他头文件,文件夹也包含源文件。到目前为止,我已经尝试了几种方法,但还没有对我有用,这些是我尝试过的:1。P/调用这是在构建dll的C++项目中编写一些代码,然后在C#中使用DllImport属性(这显然需要usingSystem.Runtime.InteropServices;).我发现这不适用于类的困难方法,它只适用于类外的方法,所以这种方法是无效的。2。包装类这是在编写一个包含指向原始类的指针的类。我发现困难实际上来自于从托管代码调用非托管代码(没有自动内存管理),这就是为什

c# - 面向 future 的大型 UI 应用程序 - 具有 2008 功能包的 MFC 或 C# 和 Winforms?

我的公司使用VisualC++中的MFC作为UI开发的事实标准开发了一个长期存在的产品。我们的代码库包含大量必须保持运行的遗留/陈旧代码。其中一些代码比我还早(最初是在70年代后期编写的),我们团队的一些成员仍在使用VisualStudio6。不过,值得庆幸的是,内部得出的结论是,与竞争对手的产品相比,我们的产品看起来有些过时,需要采取一些措施。我目前正在开发UI的一个新区域,该区域与产品的其余部分完全不同。因此,我有机会尝试"new"技术堆栈,作为一种试验场,然后再开始漫长的UI其余部分迁移过程。我在业余时间使用C#与WindowsForms和.netFramework有一段时间并且

c# - 在 winform 应用程序中使用表单名称打开表单

请问在winformc#中如何使用帮助或类名打开窗体?我有三种不同的形式用户管理群组管理位置管理我从数据库中获得了这三种形式的许可在菜单中单击我用这样的表单名称填充标签属性tsmMain.Tag=item.PermissionNametsmMain.Click+=newEventHandler(tsmMain_Click);我想做的是在单击按钮时动态打开表单并删除这些if条件?我可以通过反射(reflection)或其他方式做到这一点吗??ToolStripMenuItemaa=senderasToolStripMenuItem;vartag=aa.Tag;if(tag=="UserM

wpf - 在 WinForms 或 WPF 应用程序中编辑 HTML

我正在寻找一种在Windows应用程序(WinForms或WPF)中编辑一段HTML(例如电子邮件文本)的方法。所以这应该与我在stackoverflow网站上可供自己使用的小编辑器一样工作(嗯,除了更多的所见即所得,我猜),除了我想在WPF/WinForms中做同样的事情。无论如何:您明白了:在Windows应用程序中编辑HTML就像过去使用旧的DHTML编辑控件一样。如有任何建议,我们将不胜感激。 最佳答案 你可以试试ModelTextHTMLControl(披露:我写的)。它是您所要求的,并且据我所知是同类中唯一的东西:即它是

c# - C# 中 Winforms 应用程序的广告集成

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭去年。Improvethisquestion我在网上搜索了一段时间,试图找到解决方案。但是我发现的关于广告集成的所有内容都是针对移动应用程序的,我找不到适用于Windows应用程序的解决方案。我的问题是-有没有一种方法可以在Winforms应用程序中制作弹出式广告,当然可以通过(点击或查看或其他方式,我不知道这实际上是如何工作的)获得一些钱?现在我已经写了(我实际上下载了它)一个像Skype一样显示任务栏通知的方法,我在BackgroundWorke

Windows 10 Creators Updates 破坏了 WinForms 应用程序/蓝屏死机

当复杂的WinForms应用中有多个层时,Windows10Creators会崩溃。这可以很容易地用下面的代码重现。当悬停或单击>=40层顶部的UI时,系统会崩溃并出现BSOD。它应该会遇到异常。有人知道避免完全崩溃的调整吗?代码:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSyste

.net - 所有者绘制 TextBox 以在 WinForms 中使用

我需要一个精简的TextBox解决方案。RichTextBox被证明太慢了,所以我想采用所有者绘图或自定义控件构建的方式。我需要一个可以处理大文本内容并通过在单词或单个字符周围绘制彩色背景来提供简单突出显示的文本框。重要的是,文本字符串本身不包含标记,而是单独存储要标记的单词的索引。相对于文本字符串开头的索引(在谈论.NETTextBox时也称为Text属性)。我认为它必须涉及在我自己的控制下绘制文本,因为Windows编辑控件将无法执行我需要的操作。我的应用程序是Windows窗体。制作这样的控件的正确方法是什么,有没有例子?能否在.NET下进行快速控制?(已经假设需要本地API调用