You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WPF用户控件中ScottPlot图表与后台代码绑定方法咨询

解决WPF中ScottPlot WpfPlot控件与后台代码的关联问题

你的问题在于没有将后台图表逻辑与XAML中的chartWpf控件绑定,而是新建了独立的Plot对象,且错误用保存图片的方法来实现控件显示。正确做法是直接操作WpfPlot控件自带的Plot属性,步骤如下:

修改后台代码

直接使用XAML控件的Plot属性构建图表,最后刷新控件即可:

public UReport()
{
    InitializeComponent();

    // 直接操作chartWpf自带的Plot实例,无需新建Plot对象
    var plt = chartWpf.Plot;

    double[] values = { 26, 20, 23, 7, 16 };
    double[] positions = { 0, 1, 2, 3, 4 };
    string[] labels = { "PHP", "JS", "C++", "GO", "VB" };

    plt.AddBar(values, positions);
    plt.XTicks(positions, labels);
    plt.SetAxisLimits(yMin: 0);

    // 刷新控件,让图表显示出来
    chartWpf.Refresh();
}

关键说明

  • WpfPlot控件内部已封装Plot实例,通过chartWpf.Plot直接访问即可,无需手动创建新的Plot对象。
  • plt.SaveFig()是将图表保存为本地图片的方法,不是WPF控件显示逻辑,需移除。
  • 完成图表配置后,必须调用chartWpf.Refresh()才能让控件更新显示内容。

XAML注意事项

确保XAML根元素已正确引入ScottPlot命名空间:

xmlns:ScottPlot="clr-namespace:ScottPlot;assembly=ScottPlot.WPF"

内容的提问来源于stack exchange,提问作者Saba Zahedieh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 08:20:11