AMi*_*ico 10 wpf radiobuttonlist custom-controls
我继承了一个使用RadioButtonList继承自a的项目ListBox.它被取消了(目前找不到链接),并包含RadioButtonList.cs(包含六个依赖属性)和RadioButtonList.xaml(它只是样式和控件模板).
这种控制在一百多个地方使用.它会导致问题,因为它不是一个完整和专业的控制.问题,如焦点问题,键盘导航等.(看评论.)
经过过去几年不同时间的大量研究,似乎这种控制确实没有必要.所需要的只是GroupName在一组单选按钮上设置属性.并且,RadioButtonList使用控件的唯一原因是通过继承来帮助数据绑定选项列表ListBox.
1)这种控制真的有必要吗?有没有更好的办法?
2)是否有专业控制,开源或其他方式,这将使我能够在没有头痛的情况下获得数据绑定的好处?(我们使用Infragistics和DevExpress,但我不熟悉这些套件提供的所有控件.)
1a)这种控制真的有必要吗?
1b)有更好的方法吗?
ListBox,ItemsControl或者其他任何东西来创建样式和模板是创建这个控件的唯一方法; 因此,没有更好的方法.2)是否有专业控制......
ListBoxEdit与RadioListBoxEditStyleSettings.所有答案都表明RadioButtonList不需要创建控件.但是,如果您需要多个单选按钮列表,那么在创建样式和控件模板以及数据模板时,您最终会得到一组代码工件,可称为单选按钮列表 - 控制.因此,在我看来,a RadioButtonList是必要的.
而且,我的理解是RadioButtonList在早期的WPF CTP中被删除了.我可以理解,因为对这种易于创建的控件的需求有限.
2)是否有专业控制......
ListBoxEdit与RadioListBoxEditStyleSettings.在RadioButtonList我已经是他的答案的最终结果.虽然我擅长创建自定义控件,但我宁愿让第三方组件制造商(如Infragistics和DevExpress)创建和支持像这样的基本控件.
我只能告诉你DevExpress使用aListBoxEdit和aRadioListBoxEditStyleSettings来表示一组RadioButtons。实际上,它与您正在使用的控件相同,但我认为它提供了更好的功能并且经过了良好的测试。DevExpress 不提供 RadioButton,在我的应用程序中,我使用 WPF/Silverlight 提供的默认 RadionButton-Control。
您使用DevExpress的RadioListBoxEdit如下:
<dxe:ListBoxEdit SelectedItem={Binding CheckItem, Mode=TwoWay}>
<dxe:ListBoxEdit.StyleSettings>
<dxe:RadioListBoxEditStyleSettings />
</dxe:ListBoxEdit.StyleSettings>
</dxe:ListBoxEdit>
Run Code Online (Sandbox Code Playgroud)
关于 DevExpress 的 ListBoxEdit 的更多信息可以在这里找到
| 归档时间: |
|
| 查看次数: |
1587 次 |
| 最近记录: |