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 ...
随机推荐
- SSM框架的详细解说
文章转载自:http://blog.csdn.net/zhshulin 使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就 ...
- 使用bibtex为latex论文添加参考文献
此文以引用Shannon的Prediction and Entropy of Printed English为例 1. bib文件 1.1 准备工作 进入Google Scholar 点击设置 ...
- Flutter学习笔记(15)--MaterialApp应用组件及routes路由详解
如需转载,请注明出处:Flutter学习笔记(15)--MaterialApp应用组件及routes路由详解 最近一段时间生病了,整天往医院跑,也没状态学东西了,现在是好了不少了,也该继续学习啦!!! ...
- Kafka单线程Consumer及参数详解
请使用0.9以后的版本: 示例代码 Properties props = new Properties(); props.put("bootstrap.servers", &quo ...
- Socket通信封装MIna框架--含羞代放
目录 核心类 各个击破 IoService IoFilter IoHandler 总结 # 加入战队 微信公众号 Mina异步IO使用的Java底层JNI框架,Mina提供服务端和客户端,将我们的业务 ...
- react native 8081 端口号被占
McAfee Agent 占用8081 端口号 公司电脑被标装,McAfee Agent关不掉 sudo lsof -n -i4TCP:8081 sudo launchctl list | grep ...
- 利用QGIS下载地图数据
这段时间做了一些利用地理信息进行定位导航的系列工作,其中很重要的一部分是如何获取到地图数据,比如道路的矢量图.某一区域的栅格图,我用到的主要工具是QGIS.QGIS是一个跨平台的免费应用,其中集成了对 ...
- urllib.request.urlretrieve()用于下载制定url内容到本地
函数:urllib.urlretrieve(url[, filename[, reporthook[, data]]]) 参数说明: url:外部或者本地url ,url中不要含有中文,好像会出错.f ...
- 使用docker快速搭建本地环境
在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越来越多. 然而要顺利的安装好这些中间件也是一个比较费时费力的工作. 俗话说" ...
- DOM选择器之元素选择器
DOM中元素选择器 在DOM中我们可以将元素选择器分为两类:1.元素节点选择器:2.其它节点选择器.通过选择器选择HTML中的元素以对其进行操作,以此实现用JS对页面的操作. 一.元素节点选择器 1. ...