簡體   English   中英

刷新和清除Oxyplot模型

[英]Refresh and Clear Oxyplot Model

我正在創建一個程序,該程序使用oxyplotbtnCalculate_Click之后創建一個繪圖。 我該怎么做,以便每當我更改文本框值並單擊btnCalculate時都可以刷新圖? 我也有btnPrint並單擊它應該清除情節?

public void btnCalculate_Click(object sender, EventArgs e)
{

    Pko = float.Parse(textBox5.Text);

    //Plotting Using Oxyplots
    OxyPlot.WindowsForms.PlotView pv = new PlotView();
    pv.Location = new Point(650, 0);
    pv.Size = new Size(900, 815);
    this.Controls.Add(pv);

    pv.Model = new PlotModel { Title = "Program" };
    pv.Model.InvalidatePlot(true);   

    //Pko line from surface to depth
    LineSeries Pkoline = new LineSeries();
    Pkoline.Color = OxyColors.Black;
    Pkoline.LineStyle = LineStyle.Solid;
    Pkoline.StrokeThickness = 1;
    Pkoline.Points.Add(new DataPoint(Pko, 0));
    Pkoline.Points.Add(new DataPoint(100, 200));
    pv.Model.Series.Add()
}


private void btnClear_Click(object sender, EventArgs e)
{

}

首先,您需要為plot定義變量以在不同的事件處理程序中調用它。 清除情節只是關於清除系列集合

private readonly PlotView _pv;


public Form1()
{
    InitializeComponent();
//moved initialization from btnCalculate_Click
    _pv = new PlotView();
    this.Controls.Add(_pv);
    _pv.Location = new Point(0, 0);
    _pv.Size = new Size(500, 500);
    _pv.Model = new PlotModel {Title = "Program"};
    _pv.Model.InvalidatePlot(true);
}

private void btnCalculate_Click(object sender, EventArgs e)
{
    // keep old code Except _pv initialization   

    _pv.Model.Series.Add(Pkoline);//typo in old code
}

private void clearBtn_Click(object sender, EventArgs e)
{
    _pv.Model.InvalidatePlot(true);
    _pv.Model.Series.Clear();        
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM