gpt4 book ai didi

c# - 如何在另一个窗体窗体中显示图形

转载 作者:太空宇宙 更新时间:2023-11-03 10:43:24 24 4
gpt4 key购买 nike

我正在开发 Windows 窗体应用程序,到目前为止一切看起来都很简单。我目前有一个表单,它接受一些用户输入并将其显示在当前表单的图形中。

我想修改此应用程序,以便主窗体只接受输入,按下“开始”按钮后,获取的数据会被绘制成图表,但这次是在一个应该打开的新窗体中。如果用户要在主窗体中输入一些新信息,然后按“开始”,另一个窗体将弹出新输入数据的图表,依此类推。因此可以同时打开具有不同图形的多个表单。

我不确定如何修改我的应用程序以实现此目的。我创建了一个新的表单类并添加了一个图形控件和所有其他控件以及我希望这些新的图形表单具有的设计,但是当我尝试从原始主表单绘制数据时,我不确定我该如何访问新图形表单的图形控件值...我将修饰符设置为公开,但我似乎无法让它工作。

有没有一种方法可以更简单地将数据从一种形式绘制到我创建的图形形式的新对象中?

最佳答案

创建一个新表单作为您的绘图表单。然后向表示您的数据的该表单添加属性。您甚至可以将该数据传递到表单的构造函数中。例如,如果我的图表数据有一个图表标题和一个整数列表,我的表单可能如下所示:

public partial class GraphForm : Form
{

public string GraphTitle { get; set; }
public List<int> GraphData { get; set; }

public GraphForm(string graphTitle, List<int> graphData )
{
InitializeComponent();

GraphTitle = graphTitle;
GraphData = graphData;
}

private void GraphForm_Load(object sender, EventArgs e)
{
// Do the plotting here.
}
}

现在当用户点击 Go 按钮时,您可以创建一个新表单并传入当时需要的数据:

private void goButton_Click(object sender, EventArgs e)
{
GraphForm form = new GraphForm("Title", new List<int>() {1,2,3} );
form.Show();
}

关于c# - 如何在另一个窗体窗体中显示图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24420808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com