Winform中设置DevExpress的RadioGroup的items从配置文件中加载

Posted badaoliumangqizhi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 + 1);
            //设置位置
            radioGroupX.Location = new Point(Global.NOGROUP_HORIZONTAL_DISTANCE , Global.GROUP_VERTICAL_DISTANCE);
            //name
            radioGroupX.Name = "radioGroupX";
            //设置父级容器
            radioGroupX.Parent = panelControlX;

 

以上是关于Winform中设置DevExpress的RadioGroup的items从配置文件中加载的主要内容,如果未能解决你的问题,请参考以下文章

devexpress gridcontrol datatable 中设置一列为bool在gridview会显示为复选框,请问这个复选框有啥事件

Winform中设置ZedGraph的曲线为折线点折线散点图

Winform中设置ZedGraph因设置小刻度导致的竖直虚线显示过多

在Winform程序中设置管理员权限及为用户组添加写入权限

Winform中设置ZedGraph的多条Y轴的标题和刻度不显示十次幂

Winform中设置ZedGraph鼠标悬浮显示线上的点的坐标并自定义显示的内容