Winforms 在运行时将Devexpress ListBox控件转换为CheckedListbox/无线组控件

Winforms 在运行时将Devexpress ListBox控件转换为CheckedListbox/无线组控件,winforms,devexpress,xtraeditors,Winforms,Devexpress,Xtraeditors,我有很多遗留代码,我试图修改很少的行,以获得所需的功能。我的问题是: 我有一个DevExpress.XtraEditors.ListBoxControl。现在有一个“initFunction”在运行时填充这个ListBoxControl。initFunction()最初是这样的: initFunction() { //code to populate and initialize ListBoxControl abc = new DevExpress.XtraEditors.ListBoxCon

我有很多遗留代码,我试图修改很少的行,以获得所需的功能。我的问题是:

我有一个DevExpress.XtraEditors.ListBoxControl。现在有一个“initFunction”在运行时填充这个ListBoxControl。initFunction()最初是这样的:

initFunction()
{
//code to populate and initialize ListBoxControl
abc = new DevExpress.XtraEditors.ListBoxControl(); //abc is declared as ListBoxControl
}//end of initFunction
initFunction(bool allowMultipleSelect)
{
if(allowMultipleSelect)
{
//initialize the ListBoxControl as a CheckedListBoxControl 

}
if(!allowMultipleSelect)
{
/*initialize the ListBoxControl as Radio Group Control so that only one value can be selected from the list */

}


}//end of initFunction

我必须修改函数,使其如下所示:

initFunction()
{
//code to populate and initialize ListBoxControl
abc = new DevExpress.XtraEditors.ListBoxControl(); //abc is declared as ListBoxControl
}//end of initFunction
initFunction(bool allowMultipleSelect)
{
if(allowMultipleSelect)
{
//initialize the ListBoxControl as a CheckedListBoxControl 

}
if(!allowMultipleSelect)
{
/*initialize the ListBoxControl as Radio Group Control so that only one value can be selected from the list */

}


}//end of initFunction

现在,我该怎么做呢?我尝试在ListBoxControl中查找属性,该属性允许我有选择地将控件初始化为选中/单选控件,但找不到任何属性


也不可能将ListBoxControl初始化为CheckedListBoxControl/Radio控件。有什么建议吗?

好的,要做到这一点并不容易。涉及到很多代码。下面是一个链接,它以不太优雅的方式回答了这个问题: