在Win32上使用C#Winforms

时间:2012-09-24 09:07:19

标签: c# .net winforms winapi

我是Win32的新手,并不熟悉C#,所以请耐心等待。我在学校有一个涉及制作音频编辑程序的项目,我们可以选择使用哪种语言。我决定通过结合使用C#和Win32来使自己陷入陌生境。

到目前为止,我的进展是创建一个Winforms项目,废弃所有Winforms代码,并使用Win32 API创建一个窗口。我不知道如何使用Winforms操作窗口或以有意义的方式使用.NET框架中的任何其他内容。

我的问题是,是否有一些方法可以使用Win32 API创建一个窗口并使用Winforms进行编辑?比如,将窗口句柄传递给我的表单,编辑它,并查看已创建的窗口中反映的更改?如果这没有意义,请告诉我。我很难找到关于此的大量文档,但也许我只是在错误的地方搜索。如果您能告诉我任何可能有用的资源,或者提供正确方向的推动,我们将不胜感激。

2 个答案:

答案 0 :(得分:3)

我认为你是倒退了。 winforms的基本思想是保持大部分代码的管理,然后只在必要时以P/Invoke的方式访问本机API。

有许多书籍can get for free可以帮助您开始使用C#。

答案 1 :(得分:0)

“窗口句柄”中的Windows窗体,hWnd的句柄为IntPtr

using System.Windows.Forms;
(Form)Control.FromHandle(hWnd)