我有这个功能:
public void MainFormLoad(object sender, EventArgs e)
{
GraphPane myPane = GRAPH.GraphPane;
}
其中 myPane 是对 GraphPane 的引用(GRAPH 是显示在 GUI 中的 ZedGraphControl 的名称)现在我想更改诸如“x”或“y”轴的名称、标题、颜色等内容。或任何你可以改变的,但基于事件。例如:我有一个文本框,我可以在其中编写文本,并且该文本将在 textbox_textchanged_event 触发后作为标题显示在图表中,如下所示:
void TitleTextChanged(object sender, EventArgs e)
{
myPane.Title.Text = textbox1.Text;
}
将会有更多这样的函数来改变图形的属性。但这不起作用。有没有办法解决这个问题?
我也试过这个:
void TitleTextChanged(object sender, EventArgs e)
{
GRAPH.GraphPane.Title.Text = textbox1.text.Text;
}
但根本没有帮助。请帮助,欢迎任何建议。
**回答:到目前为止,我已经找到了这个解决方案:
public void MainFormLoad(object sender, EventArgs e)
{
EditGraph(GRAPH);
}
这是处理文本框中文本更改的事件:
public void TB_GRAPH_TITLE_VALUETextChanged(object sender, EventArgs e)
{
//GraphPane myPane2 = GRAPH.GraphPane;
changedGraphTitle = true;
EditGraph(GRAPH);
}
这是查找更改内容并对其进行更新的功能:
public void EditGraph(ZedGraphControl zgc)
{
GraphPane myPane = zgc.GraphPane;
if(changedGraphTitle)
{
myPane.Title.Text = TB_GRAPH_TITLE_VALUE.Text;
changedGraphTitle = false;
zgc.Refresh();
}
}
"bool changedGraphTitle = false" 也必须声明。**