From 3b0e2084501ea07fbcd1f984585bd64e3a0df241 Mon Sep 17 00:00:00 2001 From: xcd <834800634@qq.com> Date: 星期四, 02 七月 2020 17:14:41 +0800 Subject: [PATCH] 添加板卡基类,提取GTS板卡配置到板卡基类 --- src/Bro.Common.Model/Helper/PropertyConvertHelper.cs | 79 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 79 insertions(+), 0 deletions(-) diff --git a/src/Bro.Common.Model/Helper/PropertyConvertHelper.cs b/src/Bro.Common.Model/Helper/PropertyConvertHelper.cs index 71787f8..6dc252c 100644 --- a/src/Bro.Common.Model/Helper/PropertyConvertHelper.cs +++ b/src/Bro.Common.Model/Helper/PropertyConvertHelper.cs @@ -1,5 +1,6 @@ 锘縰sing Bro.Common.Factory; using Bro.Common.Interface; +using Bro.Common.Model; using Newtonsoft.Json; using System; using System.Collections; @@ -915,6 +916,84 @@ return base.EditValue(context, provider, value); } } + + public class IORefrenceItemCollectionEditor : CollectionEditor + { + protected override CollectionForm CreateCollectionForm() + { + var form = base.CreateCollectionForm(); + + var prop = form.GetType().GetField("propertyBrowser", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); + + if (prop != null) + { + if (prop.GetValue(form) is PropertyGrid grid) + { + grid.HelpVisible = true; + grid.ToolbarVisible = false; + } + } + + return form; + } + + //protected override object CreateInstance(Type itemType) + //{ + // return base.CreateInstance(itemType); + //} + + //protected override object[] GetItems(object editValue) + //{ + // return base.GetItems(editValue); + //} + + //protected override object SetItems(object editValue, object[] value) + //{ + // return base.SetItems(editValue, value); + //} + + public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) + { + return base.EditValue(context, provider, value); + } + + public IORefrenceItemCollectionEditor(Type type) : base(type) + { + } + + /// <summary> + /// 闄愬埗涓�娆¢�変竴涓疄渚� + /// </summary> + /// <returns></returns> + protected override bool CanSelectMultipleInstances() + { + return false; + } + + /// <summary> + /// 鎸囧畾鍒涘缓鐨勫璞$被鍨� + /// </summary> + /// <returns></returns> + protected override Type CreateCollectionItemType() + { + return typeof(IORefrenceItem); + } + + protected override string GetDisplayText(object value) + { + if (value is IComplexDisplay) + { + return (value as IComplexDisplay).GetDisplayText(); + } + + return base.GetDisplayText(value); + } + + //protected override void DestroyInstance(object instance) + //{ + // base.DestroyInstance(instance);//閲嶈锛佽嚜鍔ㄥ垹闄ょ粍浠剁殑璁捐鏃朵唬鐮侊紒 + //} + } #endregion } -- Gitblit v1.8.0