Winform中实现读取xml配置文件并动态配置ZedGraph的RadioGroup的选项
场景
Winform中对ZedGraph的RadioGroup进行数据源绑定,即通过代码添加选项:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100540152
Winform中自定义xml配置文件后对节点进行读取与写入:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100532137
结合上面两种效果实现打开一个新的窗体后,此窗体上的RadioGroup的选项是根据配置文件
中的配置自动生成的。
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
大量编程视频教程:https://space.bilibili.com/164396311
配置文件代码如下:
<?xml version="1.0" encoding="utf-8"?>
<Configure>
<!--Y轴集合-->
<YAxis>
<!--第一条Y轴-->
<YAxi>
<no></no>
<title>霸道</title>
<color>black</color>
<min>-</min>
<max></max>
</YAxi>
<!--第二条Y轴-->
<YAxi>
<no></no>
<title>电压</title>
<color>black</color>
<min>-</min>
<max></max>
</YAxi>
<YAxi>
<no></no>
<title>badao</title>
<color>red</color>
<min>-</min>
<max></max>
</YAxi>
</YAxis>
</Configure>
实现
新建一个窗体并拖拽一个RadioGroup控件。

双击窗体进入其加载完之后的事件中
private void EditY_Load(object sender, EventArgs e)
{
List<YAxisModel> nodeYList = new List<YAxisModel>();
//获取可执行文件的路径-即bin目录下的debug或者release目录
string context = System.Windows.Forms.Application.StartupPath;
string path = String.Concat(context,@"\config\YAxisSet.xml");
XmlDocument xml = new XmlDocument();
//打开一个xml
try
{
xml.Load(path);
//读取节点数据
XmlNodeList nodeList = xml.SelectNodes("Configure/YAxis/YAxi");
foreach (XmlNode n in nodeList)
{
YAxisModel ya = new YAxisModel();
ya.No = int.Parse(n.SelectSingleNode("no").InnerText);
ya.Title = n.SelectSingleNode("title").InnerText;
ya.Color = n.SelectSingleNode("color").InnerText;
ya.Min = double.Parse(n.SelectSingleNode("min").InnerText);
ya.Max = double.Parse(n.SelectSingleNode("max").InnerText);
nodeYList.Add(ya);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
} //数据绑定
foreach (YAxisModel s in nodeYList)
{
//每一个单元按钮对应的选线item
RadioGroupItem item = new RadioGroupItem();
//设置选项的value值
item.Value = s.No;
//设置选项的描述值 即 要显示的值
item.Description = s.Title;
//使选项启用
item.Enabled = true;
//将新增的选项添加到radiogroup的Items中
this.radioGroup1.Properties.Items.Add(item);
}
//默认选中value为1的项
radioGroup1.EditValue = ;
}
在此之前要新建一个对象用来存取读取的配置文件的YAxi节点的属性。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace ZedGraphTest.model
{
class YAxisModel
{
private int no; public int No
{
get { return no; }
set { no = value; }
}
private string title; public string Title
{
get { return title; }
set { title = value; }
}
private string color; public string Color
{
get { return color; }
set { color = value; }
}
private double min; public double Min
{
get { return min; }
set { min = value; }
}
private double max; public double Max
{
get { return max; }
set { max = value; }
}
}
}
效果

Winform中实现读取xml配置文件并动态配置ZedGraph的RadioGroup的选项的更多相关文章
- Winform中对自定义xml配置文件进行Xml节点的添加与删除
场景 Winform中自定义xml配置文件后对节点进行读取与写入: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10053213 ...
- Spring中加载xml配置文件的六种方式
Spring中加载xml配置文件的六种方式 博客分类: Spring&EJB XMLSpringWebBeanBlog 因为目前正在从事一个项目,项目中一个需求就是所有的功能都是插件的形式装 ...
- 【XML配置文件读取】使用jdom读取XML配置文件信息
在项目中我们经常需要将配置信息写在配置文件中,而XML配置文件是常用的格式. 下面将介绍如何通过jdom来读取xml配置文件信息. 配置文件信息 <?xml version="1.0& ...
- 如何配置多个Spring的xml配置文件(多模块配置)
如何使用多个Spring的xml配置文件(多模块配置) (2009-08-22 13:42:43) 如何使用多个Spring的xml配置文件(多模块配置) 在用Struts Spring Hibe ...
- Winform中自定义xml配置文件,并配置获取文件路径
场景 在Winform程序中,需要将一些配置项存到配置文件中,这时就需要自定义xml的配置文件格式.并在一些工具类中去获取配置文件的路径并加载其内容. 关注公众号霸道的程序猿获取编程相关电子书.教程推 ...
- WinForm中DataGridView对XML文件的读取
转自http://www.cnblogs.com/a1656344531/archive/2012/11/28/2792863.html c#读取XML XML文件是一种常用的文件格式,例如Win ...
- Log4Net读取XML配置文件及在代码中完成添加Logger操作
解决问题: 将log4net配置文件与app.config配置文件分开 手动读取log4net配置文件 手动创建logger 可将日志输出功能封装在类库中,应用程序引用时无需添加assembly引用及 ...
- cocos2dx中调用TinyXml读取xml配置文件 || cocos2d-x 中跨平台tinyxml读取xml文件方式
TiXmlDocument *doc = newTiXmlDocument; #if (CC_TARGET_PLATFORM ==CC_PLATFORM_ANDROID) //Android平台tin ...
- DOM4J 读取XML配置文件进行数据库连接
介绍介绍DOM4J. 据说是非常优秀非常优秀的Java XML API(Dom4j is an easy to use, open source library for working ...
随机推荐
- 洛谷 P1120 小木棍
题意简述 给出n个数,求最小的l,使n个数可分成若干组,每组和都为l. 题解思路 暴力搜索+剪枝 代码 #include <cstdio> #include <cstdlib> ...
- 【KakaJSON手册】04_JSON转Model_04_值过滤
在KakaJSON手册的第2篇文章中提过:由于JSON格式能表达的数据类型是比较有限的,所以服务器返回的JSON数据有时无法自动转换成客户端想要的数据类型 比如客户端想要的是Date类型,服务器返回的 ...
- HashMap源码分析之面试必备
今天我们就面试会问到关于HashMap的问题进行一个汇总,以及对这些问题进行解答. 1.HashMap的数据结构是什么? 2.为啥是线程不安全的? 3.Hash算法是怎样实现的? 4.HashMa ...
- 记录一次Git解决CONFLICT冲突
目录 记录一次Git解决CONFLICT冲突 1.CONFLICT产生的原因 2.Git正确的LIANGZHONG 使用流程 2.1 暂存,拉取,恢复暂存,合并(如果有冲突),提交,推送 2.2 将本 ...
- Springboot 优雅停止服务的几种方法
在使用Springboot的时候,都要涉及到服务的停止和启动,当我们停止服务的时候,很多时候大家都是kill -9 直接把程序进程杀掉,这样程序不会执行优雅的关闭.而且一些没有执行完的程序就会直接退出 ...
- laya2d 与 cad 之间的坐标转换
坐标系基本概念 直角坐标系可分为左手坐标系与右手坐标系,cad 中用到的是右手坐标系, Laya2D 中用到的是左手坐标系, Laya3D 中使用右手坐标系. 那么如何判断二维直角坐标系是左手还是右手 ...
- Oralce PL/SQL 调用C
1.要把C写成扩展的形式 ex.c文件 int __declspec(dllexport) sum(int a,int b) { return a+b; } 2.把C代码编译成动态库(*.dll 或 ...
- Go-json解码到结构体-踩坑
package main import ( "encoding/json" "fmt" ) type User struct { Name string `js ...
- IT人不仅要提升挣钱能力,更要拓展挣钱途径
前几天我上班路上,和小区门口开车的师傅闲聊,发现他们虽然学历不高,但挣钱的途径不少,比如固定接送多位客户,然后能通过朋友圈拓展新客户,而且通过客户口口相传,也能不断拉到生意,算下来每月也能挣1万5出头 ...
- alter add命令用来增加表的字段
alter add命令格式:alter table 表名 add字段 类型 其他; 例如,在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0: mysql> al ...