Winform中设置DevExpress的RadioGroup的items从配置文件中加载
场景
DevExpress的RadioGroup的items选项如果是不确定的话,需要其从配置文件中加载。
实现
在项目目录下新建Config文件夹,文件夹下新建xml配置文件。
<?xml version="1.0" encoding="utf-8" ?>
<!--图形选项功能Dialog中的RadioGroup中的X轴Items选项配置-->
<items>
<item>电流</item>
<item>电压</item>
<item>温度</item>
<item>比容量</item>
<item>能量</item>
<item>比能量</item>
<item>交流内阻</item>
<item>功率</item>
<item>dQ/dV</item>
<item>dQm/dV</item>
</items>
并且设置在其较新时复制到输出目录:

然后在显示RadioGroup的窗体的加载事件中。
List<string> XradioGrupItems = initRadioGroupItem(Global.RADIO_GROUP_ITEM_FILEPATH_X);c
读取配置文件中的item选项。
public List<string> initRadioGroupItem(string xmlFilePath)
{
List<string> radioGrupItems = ChartOptionHelper.getRadioGroupItems(xmlFilePath);
return radioGrupItems;
}
这里调用了工具类去访问配置文件的item并存到一个list中。
public static List<string> getRadioGroupItems(string xmlFilePath)
{
List<string> radioGroupItems = new List<string>();
XmlDocument xml = ReadXMLConfigHelper.readXml(xmlFilePath);
XmlNodeList nodeList = ReadXMLConfigHelper.getNodeListByXpath(xml, Global.RADIO_GROUP_ITEM_XPATH);
foreach(XmlNode xmlNode in nodeList)
{
radioGroupItems.Add(xmlNode.InnerText);
}
return radioGroupItems;
}
其中业务工具类又调用了公共的读取配置文件的工具类。
工具类方法参照:
C#中读写Xml配置文件常用方法工具类:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100879220
上面全局变量的Xpath的表达式的参数为全局变量:
public const string RADIO_GROUP_ITEM_XPATH = "items/item";
生成RadioGroup并给其赋值
RadioGroup radioGroupX = new RadioGroup();
foreach (string s in XradioGrupItems)
{
//每一个单元按钮对应的选项item
RadioGroupItem item = new RadioGroupItem();
//设置选项的value值
item.Value = s;
//设置选项的描述值 即 要显示的值
item.Description = s;
//使选项启用
item.Enabled = true;
//将新增的选项添加到radiogroup的Items中
radioGroupX.Properties.Items.Add(item);
}
//设置默认选中值
radioGroupX.EditValue = xAttribute.Title;
//设置宽度
radioGroupX.Width = Global.CHART_OPTION_WIDTH;
//加1 保持与Y轴高度一致
radioGroupX.Height = Global.RADIO_HEIGHT * (XradioGrupItems.Count + );
//设置位置
radioGroupX.Location = new Point(Global.NOGROUP_HORIZONTAL_DISTANCE , Global.GROUP_VERTICAL_DISTANCE);
//name
radioGroupX.Name = "radioGroupX";
//设置父级容器
radioGroupX.Parent = panelControlX;
Winform中设置DevExpress的RadioGroup的items从配置文件中加载的更多相关文章
- Spring中 <context:property-placeholder 的使用与解析 .properties 配置文件的加载
转: Spring中property-placeholder的使用与解析 Spring中property-placeholder的使用与解析 我们在基于spring开发应用的时候,一般都会将数据库的配 ...
- web.xml中如何设置配置文件的加载路径
web应用程序通过Tomcat等容器启动时,会首先加载web.xml文件,通常我们工程中的各种配置文件,如日志.数据库.spring的文件等都在此时被加载,下面是两种常用的配置文件加载路径,即配置文件 ...
- win7/8系统中php5.3和5.4、5.5不能加载php_curl.dll解决办法
win7/8系统中php5.3和5.4.5.5不能加载php_curl.dll解决办法 作者:用户 来源:互联网 时间:2016-06-23 18:54:33 php变量注释系统模块 摘要: 本文 ...
- 「快学SpringBoot」配置文件的加载顺序和配置项默认值设置
前言 有的时候,配置信息是我们无法在开发过程中就能确定的.比如,给客户开发的项目,客户需要根据自身的情况自定义配置,如数据库配置,加密密钥配置等等.这时候,就需要把配置文件放在外面,让用户自定义配置部 ...
- 关于ligerui 中 grid 表格的扩展搜索功能在远程数据加载时无法使用的解决办法
要想使用grid里的扩展搜索功能,除了要引用ligerui主要的js文件外,还必须引入下面的JS文件: 1.Source\demos\filter\ligerGrid.showFilter.js 2. ...
- 在NVIDIA A100 GPU中使用DALI和新的硬件JPEG解码器快速加载数据
在NVIDIA A100 GPU中使用DALI和新的硬件JPEG解码器快速加载数据 如今,最流行的拍照设备智能手机可以捕获高达4K UHD的图像(3840×2160图像),原始数据超过25 MB.即使 ...
- Spark代码中设置appName在client模式和cluster模式中不一样问题
问题 Spark应用名在使用yarn-cluster模式提交时不生效,在使用yarn-client模式提交时生效,如图1所示,第一个应用是使用yarn-client模式提交的,正确显示我们代码里设置的 ...
- Winform中实现根据配置文件重新加载ZedGraph属性的实现思路
场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- DevExpress 使用 XtraTabbedMdiManager 控件以 Tab样式加载 Mdi窗体并合并 RibbonControl 解决方案
最近刚接触到 DevExpress 13.1 这个皮肤组件, 觉得相当好用 于是开始准备搭建 个小应用的主体框架. 找了好久的就是没找到对应的文章来讲解这一块.. 翻了他们主网站上人家问的,以及API ...
随机推荐
- JS判断字符串长度,结合element el-input el-form 表单验证(英文占1个字符,中文汉字占2个字符)
首先看看判断字符串长度的几种方法(英文占1个字符,中文汉字占2个字符) 方法一: function strlen(str) { var len = 0; for (var i = 0; i < ...
- 基于Visual C#的AutoCAD开发——一些网址
https://blog.csdn.net/xwebsite/article/details/5578446 http://www.cadgj.com/?p=1504
- 基于Spring Boot自建分布式基础应用
目前刚入职了一家公司,要求替换当前系统(单体应用)以满足每日十万单量和一定系统用户负载以及保证开发质量和效率.由我来设计一套基础架构和建设基础开发测试运维环境,github地址. 出于本公司开发现状及 ...
- 解决php - Laravel rules preg_match(): No ending delimiter '/' found 问题
### 说明解决php - Laravel preg_match(): No ending delimiter '/' found 一.遇到问题的原因本正常添加如下 public function r ...
- 一句道破所有的springmvc(面试必备)
springmvc流程 : URL--------前端控制器DispatcherServlet---------HandlerMapping处理器映射器-------调用HandlerAdapter处 ...
- 【在 Nervos CKB 上做开发】Nervos CKB 脚本编程简介[1]:验证模型
CKB 脚本编程简介[1]: 验证模型 本文作者:Xuejie 原文链接:Introduction to CKB Script Programming 1: Validation Model 本文译者 ...
- Servlet 获取 数组id进行批量删除
把获取的复选框选中的 id(一般来说都是根据id 进行批量删除的) 从jsp页面 传值到Servlet中 jsp点击事件中: var array=[]; //先声明一个数组变量 var ids=$( ...
- Java 并发编程(一):摩拳擦掌
这篇文章的标题原本叫做——Java 并发编程(一):简介,作者名叫小二.但我在接到投稿时觉得这标题不够新颖,不够吸引读者的眼球,就在发文的时候强行修改了标题(也不咋滴). 小二是一名 Java 程序员 ...
- 配置springboot项目使用外部tomcat
配置springboot项目使用外部tomcat 1.在pom文件中添加依赖 <!--使用自带的tomcat--> <dependency> <groupId>or ...
- 前端项目升级到React-router5中遇到的问题解决方案以及思路
我胡汉三有日子没回来写写文章了,最近一直再忙着将老项目升级,所以没时间来搞文章,今天突然感觉开了挂一样,爱因斯坦附体,把之前的bug都搞定了,在这里特意把升级中遇到的问题,记录下来,算是把这个坑填上. ...