c#以现有形式绘制图表

时间:2018-02-24 10:42:06

标签: c# windows-forms-designer

我实际上是在学习C#,尤其是使用Visual Studio学习Windows表单。 我的increment(){ this.setState({ counter: this.state.counter == data.available_slots.length ? 0 : this.state.counter + 1 }); } 运行良好,它调用不同的函数,但是当我调用以下函数main()时,我遇到了问题。 该函数被调用,但没有图表添加到我的表单(表单显示但空白)。 有人知道这个问题吗? 在这种情况下,CreationDessin()是否不合适?

感谢您的帮助,

以下是我的主要脚本的一部分:

Cart.Invalidate()

这是我的CreationDessin脚本:

Form1 myform2 = new Form1();
myform2.CreationDessin(myform2, i, ListBarreX, ListBarreY, ListLabelX, 
ListLabelY, ListLabelValue);
myform2.ShowDialog();

1 个答案:

答案 0 :(得分:0)

你的第一个参数不应该是object类型,因为你已经知道它的类型了。现在假设你想要添加你的图表,例如:Form,Panel,GroupBox等......这是一个通用的解决方案:

public void CreationDessin(Control ctrl, int ChartNumber, List<int> XValues, List<int> YValues, List<int> LabelXValues, List<int> LabelYValues, List<int> Label)
{
    // Set chart options etc
    ctrl.Controls.Add(Chart); // IMPORTANT
}

你可以简单地使用它:

myform2.CreationDessin(myform2, i, ListBarreX, ListBarreY, ListLabelX, ListLabelY, ListLabelValue);

// Or even

myform2.CreationDessin(myPanel1, i, ListBarreX, ListBarreY, ListLabelX, ListLabelY, ListLabelValue);