Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从另一个类调用表单?_C#_Visual Studio_Winforms - Fatal编程技术网

C# 如何从另一个类调用表单?

C# 如何从另一个类调用表单?,c#,visual-studio,winforms,C#,Visual Studio,Winforms,我想调用另一个类的图表。图表的代码如下所示: public partial class Form1 : Form { public Form1() { InitializeComponent(); chart1.Series["S1"].Points.AddXY(0, 0, 10); chart1.Series["S1"].Points.AddXY(0, 0, 10); } } 我想从另一个不同的类中调用此图表,我尝

我想调用另一个类的图表。图表的代码如下所示:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        chart1.Series["S1"].Points.AddXY(0, 0, 10);
        chart1.Series["S1"].Points.AddXY(0, 0, 10);

    }

}
我想从另一个不同的类中调用此图表,我尝试了:

Form1 chart1 = new Form1();
chart1.Show();

谢谢

我假设您想要访问特定的表单1。不是新的。您可以将对它的引用提供给另一个类,或者将对它的引用设置为静态。例如,在Form1中创建一个字段,如下所示:

public static Form1 Chart;

在构造函数中,do
Chart=this
然后您可以使用
Form1在任何地方访问它。Chart

对于access forms类和来自另一个类的控件,有一些简单且更安全的方法()可以执行您想要的操作:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        chart1.Series["S1"].Points.AddXY(0, 0, 10);
        chart1.Series["S1"].Points.AddXY(0, 0, 10);

    }

}


    Form chart1 = (Form)Application.OpenForms["Form1"];
    //do here what you want

问题是什么?在我看来,您已经为您的问题提供了答案…您创建了一个名为chart1的表单的新副本,并且希望从该表单访问chart1控件。尝试:chart1.chart1将chart1对象从表单中删除。我已经这样做了,但会显示以下消息:“感谢您的反馈!记录声誉低于15的人的投票,但不要更改公开显示的帖子分数。”谢谢!!