From d9807295fad0ca4781cdacd4c16f1e6f0765d5cc Mon Sep 17 00:00:00 2001
From: wells.liu <wells.liu@broconcentric.com>
Date: 星期一, 07 九月 2020 12:09:28 +0800
Subject: [PATCH] io 界面滚动

---
 src/Bro.Common.Model/Model/IOItem.cs |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/Bro.Common.Model/Model/IOItem.cs b/src/Bro.Common.Model/Model/IOItem.cs
index 653cdb2..5610aaf 100644
--- a/src/Bro.Common.Model/Model/IOItem.cs
+++ b/src/Bro.Common.Model/Model/IOItem.cs
@@ -109,11 +109,14 @@
         Dictionary<IODefinition, string> itemDict = new Dictionary<IODefinition, string>();
         public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
         {
+            itemDict.Clear();
             if (context.Instance is IORefrenceItem item)
             {
                 item.IOItemSource.ForEach(i =>
                 {
-                    itemDict[i] = i.IODesc + "-" + i.IOType.GetEnumDescription() + "-" + i.IONum;
+                    IODefinition temp = new IODefinition();
+                    temp.DataFrom(i);
+                    itemDict[temp] = (string.IsNullOrWhiteSpace(i.IODesc) ? i.IOPreStatement.GetEnumDescription() : i.IODesc) + "|" + i.IOType.GetEnumDescription() + "|" + i.IONum;
                 });
 
                 return new StandardValuesCollection(itemDict.Keys);
@@ -158,7 +161,7 @@
         /// <returns></returns>
         public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
         {
-            var s = value.ToString().Split(new char[] { '-' }, StringSplitOptions.RemoveEmptyEntries);
+            var s = value.ToString().Split(new char[] { '|' });
 
             if (s.Length == 3)
             {

--
Gitblit v1.8.0