如何使用c#在另一个表单中调用main表单方法

本文关键字:表单 调用 main 方法 另一个 何使用 | 更新日期: 2023-09-27 18:07:42

 public partial class Form1 : Form
{
    String Path1 = Application.StartupPath + "''component.xml";
    XmlDataDocument xmlDatadoc = new XmlDataDocument();
    public Form1()
    {
        InitializeComponent();
    }
    XmlDocument dom;
    TreeNode tNode;
    const int NORM_UI = 0;
    const int SELECTED_UI = 1;
    private void Form1_Load(object sender, EventArgs e)
    {
        this.treeview();
    }
  public void treeview()
    {
        try
        {
            dom = new XmlDocument();
            dom.Load(Path1);

            treeView1.Nodes.Clear();
            treeView1.Nodes.Add(new TreeNode(dom.DocumentElement.Name));
            tNode = new TreeNode();
            tNode = treeView1.Nodes[0];
            tNode.ForeColor = Color.Blue;

            AddNode(dom.DocumentElement, tNode, NORM_UI, -1);
        }
        catch (XmlException xmlEx)
        {
            MessageBox.Show(xmlEx.Message);
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

我想调用这个treeview()方法当按钮2点击以下形式请帮助我

 public partial class TabPageEntry_Form2 : Form
{
    public TabPageEntry_Form2()
    {
        InitializeComponent();
    }

    private void button2_Click(object sender, EventArgs e)
    {
    }

如何使用c#在另一个表单中调用main表单方法

treeview()是一个实例方法,所以你需要创建一个Form1的对象

Form1 frm=new Form1();
frm.treeview();

我比较熟悉asp.net。这里就是:

Form1.treeview();

如果不是这样,那么这个链接可能会有所帮助:从另一个窗口(类)调用方法问题

您只需要实例化form1并调用相应的方法;

Form1 objForm1 = new Form1();
objForm1.treeview();

有几种方法。你可以把你的表单传递给另一个表单。

public partial class TabPageEntry_Form2 : Form
{
    Form1 form;
    public TabPageEntry_Form2(Form1 form1)
    {
        form = form1;
        InitializeComponent();
    }

    private void button2_Click(object sender, EventArgs e)
    {
        form.treeview();
    }

你可以使用events:

public partial class TabPageEntry_Form2 : Form
{
    public delegate void TreeViewHander();
    public event TreeViewHander TreeView;
    public TabPageEntry_Form2()
    {
        InitializeComponent();
    }

    private void button2_Click(object sender, EventArgs e)
    {
        if (TreeView) 
        {
            TreeView();
        }
    }

    // Form1 
    TabPageEntry_Form2 form2 = new TabPageEntry_Form2 ();
    form2.TreeView += treeview;