社区
组件/控件开发
帖子详情
怎么让DotNetBar的AdvPropertyGrid控件的下拉列表不可键入值?
LB__x
2020-02-25 04:29:02
如上图,在advPropertyGrid上添加一个属性,属性值是可选的下拉列表中的一个,现在这个属性值可以手动输入不存在于下拉列表中的值,我想把它做成如下图那种属性值为集合的形式,就是不允许键入值,有什么办法嘛?
...全文
331
9
打赏
收藏
怎么让DotNetBar的AdvPropertyGrid控件的下拉列表不可键入值?
如上图,在advPropertyGrid上添加一个属性,属性值是可选的下拉列表中的一个,现在这个属性值可以手动输入不存在于下拉列表中的值,我想把它做成如下图那种属性值为集合的形式,就是不允许键入值,有什么办法嘛?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
LB__x
2020-02-27
打赏
举报
回复
对,是string,但是我这的现象就是可以改而且不检查
LB__x
2020-02-26
打赏
举报
回复
public class OptionCollectionAttribute : System.Attribute { /// <summary> /// 构造器 /// </summary> /// <param name="optionValues">用逗号分隔的可选择项目(例:"A,B,C")</param> public OptionCollectionAttribute(string optionValues) { if (!string.IsNullOrEmpty(optionValues)) { string[] spliter = new string[] { "," }; string[] values = optionValues.Split(spliter, StringSplitOptions.RemoveEmptyEntries); if (values != null && values.Length > 0) { _OptionCollection.AddRange(values); } } } List<string> _OptionCollection = new List<string>(); /// <summary> /// 获取可供选择的项目集合 /// </summary> public List<string> OptionCollection { get { return _OptionCollection; } } } public partial class OptionValuesTypeConvertor : StringConverter { public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { return true; } public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return true; } public override TypeConverter.StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { if (context.Instance == null) return base.GetStandardValues(context); //找到当前操作的属性 System.Reflection.PropertyInfo[] propertyInfos = context.Instance.GetType().GetProperties(); System.Reflection.PropertyInfo currentProperty = null; foreach (System.Reflection.PropertyInfo info in propertyInfos) { if (info.Name == context.PropertyDescriptor.Name) { currentProperty = info; break; } } if (currentProperty == null) return base.GetStandardValues(context); //找到当前操作的属性的OptionCollectionAttribute特性,并根据该特性的值得到可选集合 object[] optionCollectionAttributes = currentProperty.GetCustomAttributes(typeof(OptionCollectionAttribute), false); if (optionCollectionAttributes != null && optionCollectionAttributes.Length > 0 && optionCollectionAttributes[0] is OptionCollectionAttribute) { OptionCollectionAttribute myAttribute = optionCollectionAttributes[0] as OptionCollectionAttribute; return new StandardValuesCollection(myAttribute.OptionCollection); } else { return base.GetStandardValues(context); } } } 绑的是固定值的两个string,用了上面的转换器 [TypeConverter(typeof(OptionValuesTypeConvertor))] [OptionCollection("常规,日立杯")] 用的时候就把这两个属性赋给需要的变量了 而且我不知道为什么,GetStandardValuesExclusive方法不管是赋值true还是false,都不检查输入的值是否正确
LB__x
2020-02-26
打赏
举报
回复
你用的是控件是PropertyGrid还是DotNetBar的AdvPropertyGrid?PropertyGrid确实不可输入,但是AdvPropertyGrid就可以,我也搞不懂为啥了,环境是.Net Core 3.0的
Bridge_go
2020-02-26
打赏
举报
回复
我的怎么不会,你这个绑定的是什么类型的变量,还是我们用的版本不一样
LB__x
2020-02-26
打赏
举报
回复
怎么直接用combobox的dropdownlist啊?
LB__x
2020-02-26
打赏
举报
回复
不知道,控件自带的下拉列表就这样,可能类似于combobox的dorpdown吧
Bridge_go
2020-02-26
打赏
举报
回复
就用你的代码试了,不会出现啊。你变量是什么类型的,string么?
正怒月神
2020-02-25
打赏
举报
回复
那就直接用 combobox或者dropdownlist就好了。
Bridge_go
2020-02-25
打赏
举报
回复
又可以下拉,又可以输入是怎么实现的?
DotNet
Bar.7.0
控件
一个很好的winform的
DotNet
Bar.7.0
控件
DotNet
Bar商业
控件
源码
DotNet
Bar商业
控件
源码,此源码并非最新版本的源代码,但是很有研究价
值
。
毕业设计成品C#智能化企业人事管理系统实战课程
本套课程给大家带来一套智能化企业人事管理系统,课程将对系统的整个实现过程进行录像(需求分析-数据库设计-界面设计-代码实现-问题解决全过程录像,方便学生学习掌握)。智能化企业人事管理系统系统基于C/S结构,也就是以软件的形式进行开发。系统开发环境为Visual Studio和SQL Server。系统可以作为大作业/期末作业/毕业设计作品的参考范例。系统功能包括员工管理 部门管理 档案管理 自动考勤 奖惩管理和数据分析(数据分析包括男女比例分析/地域分析/绩效评估功能)系统特色和亮点功能:1.系统员工角色的分配-基于动态权限分配。2.档案管理-调用WORD文档,然后套用预定的模板,生成标准的个人档案。3.自动考勤管理-自动考勤记录+邮件提醒。4.数据分析-基于Chart图表
控件
,以图表的形式展示。5.DevComponents.
DotNet
Bar2
控件
美化-友好度更高。课程附带2套源码,代码部分完全一致,在界面部分学生的作品有一定的美化,大家可以按需求选择和下载,源码可以联系讲师获取本套课程售价为450元 不需要源码的同学享受活动价格优惠,所有活动折扣/会员满减等最终售价低于课程价格时,请额外不足差价获取源码
DotNet
Bar及相关
控件
包含
DotNet
Bar和Dll
控件
文件,可以使开发页面绚丽...
DotNet
Bar c#
控件
源码
该资源为著名第三方
控件
DotNet
Bar的源码,该工程
不可
直接运行,但是涵盖的所有的
控件
源码,对编写自定义
控件
相当有帮助
组件/控件开发
8,834
社区成员
7,151
社区内容
发帖
与我相关
我的任务
组件/控件开发
.NET技术 组件/控件开发
复制链接
扫一扫
分享
社区描述
.NET技术 组件/控件开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章