C# Winforms-类的作用域

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

您好,我正在尝试重用一些我之前被指向的代码,以便在我的winform中运行第三方
.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,忘了放回去)谢谢