C# Winforms-类的作用域
您好,我正在尝试重用一些我之前被指向的代码,以便在我的winform中运行第三方C# Winforms-类的作用域,c#,.net,class,methods,scope,C#,.net,Class,Methods,Scope,您好,我正在尝试重用一些我之前被指向的代码,以便在我的winform中运行第三方.exe 给我的密码是 通过Greg Young先生 public class Native { [DllImport("user32.dll", SetLastError = true)] private static extern uint SetParent(IntPtr hWndChild, IntPtr hWndNewParent); public stat
.exe
给我的密码是
通过Greg Young先生
public class Native {
[DllImport("user32.dll", SetLastError = true)]
private static extern uint SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
public static void LoadProcessInControl(string _Process, Control _Control)
{
System.Diagnostics.Process p = System.Diagnostics.Process.Start(_Process);
p.WaitForInputIdle();
Native.SetParent(p.MainWindowHandle, _Control.Handle);
}
}
它会在哪里
public partial class Form1 : Form {
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
LoadProcessInControl("notepad.exe", this.splitContainer1.Panel1);
LoadProcessInControl("notepad.exe", this.splitContainer1.Panel2);
}
}
然而,我不断得到错误:
The name 'LoadProcessInControl' does not exist in the current context
在我的编程知识中,类的范围仍然是一个弱点,我希望能更好地理解它
我已经尝试将类切换到public并从方法中删除static(加载ProControl),但我没有取得任何进展)
感谢您的帮助在Form1_Load()函数中,尝试引用Native.LoadProcessInControl()而不是仅仅LoadProcessInControl()。在Form1_Load()函数中,尝试引用Native.LoadProcessInControl()而不是仅仅LoadProcessInControl()。我明白了“非静态字段、方法或属性'Perls.Form1.Native.LoadProcessInControl(string,System.Windows.Forms.Control)需要对象引用。”“不管它如何工作(我从OC中删除了静态字段,但忘记将其放回)Thanksthat gets me”非静态字段、方法或属性需要对象引用,或者属性'Perls.Form1.Native.LoadProcessInControl(string,System.Windows.Forms.Control)'“不管它如何工作(我从OC中删除了static,忘了放回去)谢谢