Closed snikeguo closed 3 months ago
我网上找了个图
有如下需求,
class Board { public string Name{get.set}; public ....//userData; } class ChoiceBoard { public List<Board> AllBoards{get set}=new .... //假定集合里面已经有两个board ,一个叫stm32 一个叫S32K public Board SelectedBoard{get;set;} } class MainMenu { [DisplayName("ChoiceBoard")] public ChoiceBoard ChoiceBoard{get;set;} }
我希望得到如下界面,会有类似于Enum一样的下拉选择框,由用户去选择是STM32还是S32K。 当然这个下选中不同的下拉框他的Description啥的都不一样。这样用户就直观的看到了。目前来说,我使用SelectableList+我自己的类实现toString()可以显示出来,不过做不到Description那些也显示出来。 可以讨论一下,我正在开发一个替换kconfig的一个开源软件。 这里我成功的显示出来了TC397 但是TC397这个Board对象 的其他属性并没有显示出来,比如Description等等,您有什么好的方案?
第二个问题: 子类必须要[TypeConverter(typeof(ExpandableObjectConverter))]做修饰,要不然不显示,这里就有个问题,我只是做HOST这个宿主显示软件的,关于界面的描述,是由用户去编写的,能否把他去掉,这样方便用户写。因为我面对的用户是非C#,可能是开发内核 单片机的。 第三个问题,随着子类套子类,这个东西会一直往右边扩大,您有什么好的办法?
第三个需求确实也没什么好的办法,因为这个控件我只是拿官方有的控件组合出来,并没有其他一些专门的定制。
有如下需求,
我希望得到如下界面,会有类似于Enum一样的下拉选择框,由用户去选择是STM32还是S32K。 当然这个下选中不同的下拉框他的Description啥的都不一样。这样用户就直观的看到了。目前来说,我使用SelectableList+我自己的类实现toString()可以显示出来,不过做不到Description那些也显示出来。 可以讨论一下,我正在开发一个替换kconfig的一个开源软件。 这里我成功的显示出来了TC397 但是TC397这个Board对象 的其他属性并没有显示出来,比如Description等等,您有什么好的方案?
第二个问题: 子类必须要[TypeConverter(typeof(ExpandableObjectConverter))]做修饰,要不然不显示,这里就有个问题,我只是做HOST这个宿主显示软件的,关于界面的描述,是由用户去编写的,能否把他去掉,这样方便用户写。因为我面对的用户是非C#,可能是开发内核 单片机的。 第三个问题,随着子类套子类,这个东西会一直往右边扩大,您有什么好的办法?