weixin_42074469 2022-04-19 14:31 采纳率: 100%
浏览 101
已结题

C#设计winform时创建了多个form,每个form里都有chart控件

C#设计winform时创建了多个form,每个form里都有chart控件

img


img

启动之后在主页的panel里会调取另外的form显示,因为我的form里是显示chart控件的,但是所有的这些chart数据的来源都是同一个Xml文件,我只不过是把他们分开提取到各自的chart里了
现在出现的问题就是,我打开form1看曲线的时候,form2的曲线貌似并未添加,我的理解是只要运行了,所有的chart就应该都在加载曲线,但是现在不是的,而且另外一个现象就是我切换到form2再返回form1是,原先form1里生成的曲线也没有了

这种问题的话应该怎么解决,代码该怎么写呢?@CSDN专家-showbo

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2022-04-19 15:30
    关注

    Form_Load事件读取下监控的文件夹下的gz文件,然后生成

    
            private void Form1_Load(object sender, EventArgs e)
            {
                while (chart1.Series.Count > 0) chart1.Series.RemoveAt(0);
    
    
                ///读取监控文件中的所有gz文件,按照时间降序排列后,获取配置的max个文件用来生成曲线
                var files = Directory.GetFiles(FolderPath).Select(i => new { Path = i, Time = new FileInfo(i).CreationTime }).OrderByDescending(i => i.Time).Take(max);
                foreach (var f in files)
                {
                    setChartSource(f.Path);
                }
    
                var watcher = new FileSystemWatcher(FolderPath);
                watcher.Created += Watcher_Created;//生成文件事件
    
                watcher.EnableRaisingEvents = true;//启动监控
            }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月27日
  • 已采纳回答 4月19日
  • 创建了问题 4月19日