Shuxia Ning
2024-09-26 502ed6f01f605098d46a1fe9f55f416d5c5c3e13
Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0
已修改4个文件
729 ■■■■■ 文件已修改
WinFrmUI/HStation.WinFrmUI.Xhs.Core/00-core/AssetsMatchingHelper.cs 173 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs 367 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.resx 166 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/00-core/AssetsMatchingHelper.cs
@@ -1,4 +1,6 @@
namespace HStation.WinFrmUI
using HStation.WinFrmUI.PhartRelation;
namespace HStation.WinFrmUI
{
    public class AssetsMatchingHelper
    {
@@ -73,21 +75,21 @@
        }
        //泵匹配
        public static async Task<bool> MatchingPumps(PumpMatchingViewModel viewModel, List<Vmo.PumpMainVmo> pumpMainVmos)
        public static async Task<bool> MatchingPumps(PumpMatchingViewModel InputModel, List<Vmo.PumpMainVmo> pumpMainVmos)
        {
            Vmo.PumpMainVmo vmo = null;
            int startCount = 0;
            // 尝试绝对匹配
            var absoluteMatch = pumpMainVmos.Where(item =>
            (viewModel.RatedN == null || viewModel.RatedN == item.RatedSpeed) &&
            (viewModel.RatedQ == null || viewModel.RatedQ == item.RatedFlow) &&
            (viewModel.RatedH == null || viewModel.RatedH == item.RatedHead) &&
            (viewModel.RatedP == item.RatedPower)).ToList();
            (InputModel.RatedN == null || InputModel.RatedN == item.RatedSpeed) &&
            (InputModel.RatedQ == null || InputModel.RatedQ == item.RatedFlow) &&
            (InputModel.RatedH == null || InputModel.RatedH == item.RatedHead) &&
            (InputModel.RatedP == item.RatedPower)).ToList();
            if (absoluteMatch != null && absoluteMatch.Count != 0)
            {
                foreach (var item in absoluteMatch)
                {
                    int commonCount = CountCommonCharacters(viewModel.ModelType, item.Name);
                    int commonCount = GetIntersect(InputModel.ModelType, item.Name);
                    if (commonCount > startCount)
                    {
                        vmo = item;
@@ -99,15 +101,15 @@
            {
                // 尝试区间匹配
                var rangeMatch = pumpMainVmos.Where(item =>
                   (viewModel.RatedN.HasValue ? Math.Abs(viewModel.RatedN.Value - item.RatedSpeed) <= _speedTolerance : true) &&
                   (viewModel.RatedQ.HasValue ? Math.Abs(viewModel.RatedQ.Value - item.RatedFlow) <= _flowTolerance : true) &&
                   (viewModel.RatedH.HasValue ? Math.Abs(viewModel.RatedH.Value - item.RatedHead) <= _headTolerance : true) &&
                   (Math.Abs(viewModel.RatedP - item.RatedPower) <= _powerTolerance)).ToList();
                   (InputModel.RatedN.HasValue ? Math.Abs(InputModel.RatedN.Value - item.RatedSpeed) <= _speedTolerance : true) &&
                   (InputModel.RatedQ.HasValue ? Math.Abs(InputModel.RatedQ.Value - item.RatedFlow) <= _flowTolerance : true) &&
                   (InputModel.RatedH.HasValue ? Math.Abs(InputModel.RatedH.Value - item.RatedHead) <= _headTolerance : true) &&
                   (Math.Abs(InputModel.RatedP - item.RatedPower) <= _powerTolerance)).ToList();
                if (rangeMatch != null && rangeMatch.Count != 0)
                {
                    foreach (var item in rangeMatch)
                    {
                        int commonCount = CountCommonCharacters(viewModel.ModelType, item.Name);
                        int commonCount = GetIntersect(InputModel.ModelType, item.Name);
                        if (commonCount > startCount)
                        {
                            vmo = item;
@@ -121,7 +123,7 @@
            {
                foreach (var item in pumpMainVmos)
                {
                    int commonCount = CountCommonCharacters(viewModel.ModelType, item.Name);
                    int commonCount = GetIntersect(InputModel.ModelType, item.Name);
                    if (commonCount > startCount)
                    {
                        vmo = item;
@@ -131,15 +133,46 @@
            }
            if (vmo != null)
            {
                viewModel.MatchingRatedH = vmo.RatedHead;
                viewModel.MatchingRatedN = vmo.RatedSpeed;
                viewModel.MatchingRatedQ = vmo.RatedFlow;
                viewModel.MatchingRatedP = vmo.RatedPower;
                viewModel.MatchingDbId = vmo.ID.ToString();
                InputModel.MatchingRatedH = vmo.RatedHead;
                InputModel.MatchingRatedN = vmo.RatedSpeed;
                InputModel.MatchingRatedQ = vmo.RatedFlow;
                InputModel.MatchingRatedP = vmo.RatedPower;
                InputModel.MatchingDbId = vmo.ID.ToString();
                InputModel.MatchingModelType = vmo.Name;
                var list = await new BLL.XhsPumpMainPhartMappingExtensions().GetByPumpMainID(vmo.ID);
                if (list != null && list.Count > 0)
                {
                    viewModel.MatchingCurveDbId = list.First().ID.ToString();
                    InputModel.MatchingCurveDbId = list.First().ID.ToString();
                    var graph_qh = list.First().Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQH);
                    var graph_qe = list.First().Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQE);
                    var graph_qp = list.First().Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQP);
                    if (graph_qh != null)
                    {
                        var points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_qh.GraphType, graph_qh.GeometryInfo, 100, null);
                        InputModel.MatchingCurveQH = new List<CurvePointMatchingViewModel>();
                        foreach (var item in points_qh)
                        {
                            InputModel.MatchingCurveQH.Add(new CurvePointMatchingViewModel(item.X, item.Y));
                        }
                    }
                    if (graph_qe != null)
                    {
                        var points_qe = PhartPerformCurveHelper.GetFeatPointList(graph_qe.GraphType, graph_qe.GeometryInfo, 100, null);
                        InputModel.MatchingCurveQE = new List<CurvePointMatchingViewModel>();
                        foreach (var item in points_qe)
                        {
                            InputModel.MatchingCurveQE.Add(new CurvePointMatchingViewModel(item.X, item.Y));
                        }
                    }
                    if (graph_qp != null)
                    {
                        var points_qp = PhartPerformCurveHelper.GetFeatPointList(graph_qp.GraphType, graph_qp.GeometryInfo, 100, null);
                        InputModel.MatchingCurveQP = new List<CurvePointMatchingViewModel>();
                        foreach (var item in points_qp)
                        {
                            InputModel.MatchingCurveQP.Add(new CurvePointMatchingViewModel(item.X, item.Y));
                        }
                    }
                }
                return true;
            }
@@ -160,7 +193,7 @@
            {
                foreach (var range in absoluteMatch)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, range.Name);
                    int commonCount = GetIntersect(input.ModelType, range.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = range;
@@ -173,7 +206,7 @@
                //区间匹配
                var rangeMatch = adaptingManageVmos.Where(item =>
                {
                    if (item.Caliber != null && input.Diameter != null)
                    if (item.Caliber.HasValue)
                    {
                        return Math.Abs(Convert.ToInt64(item.Caliber - input.Diameter)) <= _caliberTolerance;
                    }
@@ -199,7 +232,7 @@
                        }
                        else
                        {
                            int commonCount = CountCommonCharacters(input.Material, range.Material);
                            int commonCount = GetIntersect(input.Material, range.Material);
                            if (commonCount > firstCount)
                            {
                                materialList.Add(range);
@@ -211,7 +244,7 @@
                    firstCount = 0;
                    foreach (var material in materialList)
                    {
                        int commonCount = CountCommonCharacters(input.ModelType, material.Name);
                        int commonCount = GetIntersect(input.ModelType, material.Name);
                        if (commonCount > firstCount)
                        {
                            vmo = material;
@@ -226,7 +259,7 @@
            {
                foreach (var item in adaptingManageVmos)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, item.Name);
                    int commonCount = GetIntersect(input.ModelType, item.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = item;
@@ -237,6 +270,12 @@
            if (vmo != null)
            {
                input.MatchingMinorLoss = vmo.Coefficient;
                input.MatchingDbId = vmo.ID.ToString();
                input.MatchingDiameter = vmo.Caliber;
                input.MatchingMaterial = vmo.Material;
                input.MatchingModelType = vmo.Name;
                //  input.MatchingValveSetting =
                input.MatchingValveType = vmo.Type.ToString();
                return true;
            }
            return false;
@@ -256,7 +295,7 @@
            {
                foreach (var range in absoluteMatch)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, range.Name);
                    int commonCount = GetIntersect(input.ModelType, range.Name);
                    if (commonCount > StartCount)
                    {
                        vmo = range;
@@ -281,7 +320,7 @@
                    foreach (var range in rangeMatch)
                    {
                        //以材料为条件开始匹配
                        int commonCount = CountCommonCharacters(input.Material, range.Material);
                        int commonCount = GetIntersect(input.Material, range.Material);
                        if (commonCount > StartCount)
                        {
                            vmo = range;
@@ -295,7 +334,7 @@
            {
                foreach (var item in pipeLineManageVmos)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, item.Name);
                    int commonCount = GetIntersect(input.ModelType, item.Name);
                    if (commonCount > StartCount)
                    {
                        vmo = item;
@@ -308,21 +347,25 @@
                switch (input.eAlgorithmType)
                {
                    case HStation.Assets.eAlgorithmType.Hazen:
                        input.MatchingMinorLoss = vmo.Hazen;
                        input.MatchingRoughness = vmo.Hazen;
                        break;
                    case HStation.Assets.eAlgorithmType.Manning:
                        input.MatchingMinorLoss = vmo.Manning;
                        input.MatchingRoughness = vmo.Manning;
                        break;
                    case HStation.Assets.eAlgorithmType.Darcy:
                        input.MatchingMinorLoss = vmo.Darcy;
                        input.MatchingRoughness = vmo.Darcy;
                        break;
                    default:
                        input.MatchingMinorLoss = vmo.Hazen;
                        input.MatchingRoughness = vmo.Hazen;
                        break;
                }
                input.MatchingDbId = vmo.ID.ToString();
                input.MatchingMaterial = vmo.Material;
                input.MatchingModelType = vmo.Name;
                input.MatchingMinorLoss = vmo.Coefficient;
                return true;
            }
            return false;
@@ -342,7 +385,7 @@
            {
                foreach (var range in absoluteMatch)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, range.Name);
                    int commonCount = GetIntersect(input.ModelType, range.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = range;
@@ -381,7 +424,7 @@
                        }
                        else
                        {
                            int commonCount = CountCommonCharacters(input.Material, range.Material);
                            int commonCount = GetIntersect(input.Material, range.Material);
                            if (commonCount > firstCount)
                            {
                                materialList.Add(range);
@@ -393,7 +436,7 @@
                    firstCount = 0;
                    foreach (var material in materialList)
                    {
                        int commonCount = CountCommonCharacters(input.ModelType, material.Name);
                        int commonCount = GetIntersect(input.ModelType, material.Name);
                        if (commonCount > firstCount)
                        {
                            vmo = material;
@@ -408,7 +451,7 @@
            {
                foreach (var item in adaptingManageVmos)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, item.Name);
                    int commonCount = GetIntersect(input.ModelType, item.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = item;
@@ -419,6 +462,9 @@
            if (vmo != null)
            {
                input.MatchingMinorLoss = vmo.Coefficient;
                input.MatchingDbId = vmo.ID.ToString();
                input.MatchingMaterial = vmo.Material;
                input.MatchingModelType = vmo.Name;
                return true;
            }
            return false;
@@ -438,7 +484,7 @@
            {
                foreach (var range in absoluteMatch)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, range.Name);
                    int commonCount = GetIntersect(input.ModelType, range.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = range;
@@ -477,7 +523,7 @@
                        }
                        else
                        {
                            int commonCount = CountCommonCharacters(input.Material, range.Material);
                            int commonCount = GetIntersect(input.Material, range.Material);
                            if (commonCount > firstCount)
                            {
                                materialList.Add(range);
@@ -489,7 +535,7 @@
                    firstCount = 0;
                    foreach (var material in materialList)
                    {
                        int commonCount = CountCommonCharacters(input.ModelType, material.Name);
                        int commonCount = GetIntersect(input.ModelType, material.Name);
                        if (commonCount > firstCount)
                        {
                            vmo = material;
@@ -504,7 +550,7 @@
            {
                foreach (var item in adaptingManageVmos)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, item.Name);
                    int commonCount = GetIntersect(input.ModelType, item.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = item;
@@ -515,6 +561,9 @@
            if (vmo != null)
            {
                input.MatchingMinorLoss = vmo.Coefficient;
                input.MatchingDbId = vmo.ID.ToString();
                input.MatchingMaterial = vmo.Material;
                input.MatchingModelType = vmo.Name;
                return true;
            }
            return false;
@@ -534,7 +583,7 @@
            {
                foreach (var range in absoluteMatch)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, range.Name);
                    int commonCount = GetIntersect(input.ModelType, range.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = range;
@@ -573,7 +622,7 @@
                        }
                        else
                        {
                            int commonCount = CountCommonCharacters(input.Material, range.Material);
                            int commonCount = GetIntersect(input.Material, range.Material);
                            if (commonCount > firstCount)
                            {
                                materialList.Add(range);
@@ -585,7 +634,7 @@
                    firstCount = 0;
                    foreach (var material in materialList)
                    {
                        int commonCount = CountCommonCharacters(input.ModelType, material.Name);
                        int commonCount = GetIntersect(input.ModelType, material.Name);
                        if (commonCount > firstCount)
                        {
                            vmo = material;
@@ -600,7 +649,7 @@
            {
                foreach (var item in adaptingManageVmos)
                {
                    int commonCount = CountCommonCharacters(input.ModelType, item.Name);
                    int commonCount = GetIntersect(input.ModelType, item.Name);
                    if (commonCount > firstCount)
                    {
                        vmo = item;
@@ -611,25 +660,29 @@
            if (vmo != null)
            {
                input.MatchingMinorLoss = vmo.Coefficient;
                input.MatchingDbId = vmo.ID.ToString();
                input.MatchingMaterial = vmo.Material;
                input.MatchingModelType = vmo.Name;
                return true;
            }
            return false;
        }
        //返回两个字符串之间相同的字符个数
        private static int CountCommonCharacters(string baseString, string compareString)
        {
            // 将字符串转换为字符集合
            if (baseString == string.Empty || baseString == null || compareString == string.Empty || compareString == null)
            {
                return 0;
            }
            HashSet<char> baseChars = new HashSet<char>(baseString);
            HashSet<char> comparisonChars = new HashSet<char>(compareString);
            // 计算两个集合的交集
            int commonCount = baseChars.Intersect(comparisonChars).Count();
            return commonCount;
        }
        /*
                //返回两个字符串之间相同的字符个数
                private static int GetIntersect(string baseString, string compareString)
                {
                    // 将字符串转换为字符集合
                    if (baseString == string.Empty || baseString == null || compareString == string.Empty || compareString == null)
                    {
                        return 0;
                    }
                    HashSet<char> baseChars = new HashSet<char>(baseString);
                    HashSet<char> comparisonChars = new HashSet<char>(compareString);
                    // 计算两个集合的交集
                    int commonCount = baseChars.Intersect(comparisonChars).Count();
                    return commonCount;
                }*/
        /// <summary>
        /// 获取两个字符串的所有交集
@@ -637,11 +690,11 @@
        /// <param name="str1"></param>
        /// <param name="str2"></param>
        /// <returns></returns>
        public static string GetIntersect(string str1, string str2)
        public static int GetIntersect(string str1, string str2)
        {
            if (str1 == null || str2 == null) return null;
            if (str1 == null || str2 == null) return 0;
            return string.Join("", str1.Intersect(str2));
            return string.Join("", str1.Intersect(str2)).Count();
        }
    }
}
WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs
@@ -37,13 +37,18 @@
            barBtnSave = new DevExpress.XtraBars.BarButtonItem();
            barBtnHydroParterList = new DevExpress.XtraBars.BarButtonItem();
            barBtnShowHide = new DevExpress.XtraBars.BarButtonItem();
            barBtnMatching = new DevExpress.XtraBars.BarButtonItem();
            barBtnSingleMatching = new DevExpress.XtraBars.BarSubItem();
            barBtnPumpMatching = new DevExpress.XtraBars.BarButtonItem();
            barBtnValveMatching = new DevExpress.XtraBars.BarButtonItem();
            barBtnPipeMatching = new DevExpress.XtraBars.BarButtonItem();
            barBtn = new DevExpress.XtraBars.BarButtonItem();
            barBtnMatchingList = new DevExpress.XtraBars.BarButtonItem();
            barBtnUnMatchingList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetPumpList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetValveList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetPipeList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetElbowsList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetThreelinkList = new DevExpress.XtraBars.BarButtonItem();
            barBtnFourlinkList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetTranslationList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetExchangerList = new DevExpress.XtraBars.BarButtonItem();
            barBtnSetJunctionList = new DevExpress.XtraBars.BarButtonItem();
            ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage();
            ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
            ribbonPageGroup2 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
@@ -51,54 +56,68 @@
            ribbonPageGroup4 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
            tabPane1 = new DevExpress.XtraBars.Navigation.TabPane();
            pageBimface = new DevExpress.XtraBars.Navigation.TabNavigationPage();
            xhsProjectSimulationBimfaceCtrl1 = new XhsProjectSimulationBimfaceCtrl();
            pageQ3d = new DevExpress.XtraBars.Navigation.TabNavigationPage();
            xhsProjectSimulationQ3dCtrl1 = new XhsProjectSimulationQ3dCtrl();
            tabPageL3d = new DevExpress.XtraBars.Navigation.TabNavigationPage();
            xhsProjectSimulationL3dCtrl1 = new XhsProjectSimulationL3dCtrl();
            dockManager1 = new DevExpress.XtraBars.Docking.DockManager(components);
            docPnlProperty = new DevExpress.XtraBars.Docking.DockPanel();
            dockPanel1_Container = new DevExpress.XtraBars.Docking.ControlContainer();
            docPnlMatchingList = new DevExpress.XtraBars.Docking.DockPanel();
            controlContainer5 = new DevExpress.XtraBars.Docking.ControlContainer();
            xhsProjectSimulationPropertyCtrl1 = new XhsProjectSimulationPropertyCtrl();
            docPnlHydroParterList = new DevExpress.XtraBars.Docking.DockPanel();
            controlContainer3 = new DevExpress.XtraBars.Docking.ControlContainer();
            hydroParterListCtrl1 = new HydroParterListCtrl();
            docPnlHydroCalcu = new DevExpress.XtraBars.Docking.DockPanel();
            controlContainer2 = new DevExpress.XtraBars.Docking.ControlContainer();
            xhsProjectSimulationHydroCalcuFailedCtrl1 = new XhsProjectSimulationHydroCalcuFailedCtrl();
            docPnlHydroCheck = new DevExpress.XtraBars.Docking.DockPanel();
            controlContainer1 = new DevExpress.XtraBars.Docking.ControlContainer();
            xhsProjectSimulationHydroCheckFailedCtrl1 = new XhsProjectSimulationHydroCheckFailedCtrl();
            docPnlUnMatchingList = new DevExpress.XtraBars.Docking.DockPanel();
            controlContainer4 = new DevExpress.XtraBars.Docking.ControlContainer();
            svgImg32 = new DevExpress.Utils.SvgImageCollection(components);
            radialMenu1 = new DevExpress.XtraBars.Ribbon.RadialMenu(components);
            xhsProjectSimulationUnMatchingListCtrl1 = new XhsProjectSimulationUnMatchingListCtrl();
            docPnlMatchingList = new DevExpress.XtraBars.Docking.DockPanel();
            controlContainer5 = new DevExpress.XtraBars.Docking.ControlContainer();
            xhsProjectSimulationMatchingListCtrl1 = new Xhs.XhsProjectSimulationMatchingListCtrl();
            svgImg32 = new DevExpress.Utils.SvgImageCollection(components);
            rmSet = new DevExpress.XtraBars.Ribbon.RadialMenu(components);
            ((ISupportInitialize)ribbonControl1).BeginInit();
            ((ISupportInitialize)tabPane1).BeginInit();
            tabPane1.SuspendLayout();
            pageBimface.SuspendLayout();
            pageQ3d.SuspendLayout();
            tabPageL3d.SuspendLayout();
            ((ISupportInitialize)dockManager1).BeginInit();
            docPnlProperty.SuspendLayout();
            docPnlMatchingList.SuspendLayout();
            controlContainer5.SuspendLayout();
            dockPanel1_Container.SuspendLayout();
            docPnlHydroParterList.SuspendLayout();
            controlContainer3.SuspendLayout();
            docPnlHydroCalcu.SuspendLayout();
            controlContainer2.SuspendLayout();
            docPnlHydroCheck.SuspendLayout();
            controlContainer1.SuspendLayout();
            docPnlUnMatchingList.SuspendLayout();
            controlContainer4.SuspendLayout();
            docPnlMatchingList.SuspendLayout();
            controlContainer5.SuspendLayout();
            ((ISupportInitialize)svgImg32).BeginInit();
            ((ISupportInitialize)radialMenu1).BeginInit();
            ((ISupportInitialize)rmSet).BeginInit();
            SuspendLayout();
            // 
            // ribbonControl1
            // 
            ribbonControl1.ExpandCollapseItem.Id = 0;
            ribbonControl1.ItemPanelStyle = DevExpress.XtraBars.Ribbon.RibbonItemPanelStyle.Classic;
            ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, barBtnHydroCheck, barBtnHydroCalcu, barBtnHydroExportInp, barBtnSave, barBtnHydroParterList, barBtnShowHide, barBtnMatching, barBtnSingleMatching, barBtnPumpMatching, barBtnValveMatching, barBtnPipeMatching, barBtn, barBtnUnMatchingList });
            ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, barBtnHydroCheck, barBtnHydroCalcu, barBtnHydroExportInp, barBtnSave, barBtnHydroParterList, barBtnShowHide, barBtnMatchingList, barBtnUnMatchingList, barBtnSetList, barBtnSetPumpList, barBtnSetValveList, barBtnSetPipeList, barBtnSetElbowsList, barBtnSetThreelinkList, barBtnFourlinkList, barBtnSetTranslationList, barBtnSetExchangerList, barBtnSetJunctionList });
            ribbonControl1.Location = new Point(0, 0);
            ribbonControl1.MaxItemId = 21;
            ribbonControl1.MaxItemId = 31;
            ribbonControl1.Name = "ribbonControl1";
            ribbonControl1.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] { ribbonPage1 });
            ribbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.False;
            ribbonControl1.ShowExpandCollapseButton = DevExpress.Utils.DefaultBoolean.False;
            ribbonControl1.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.ShowOnMultiplePages;
            ribbonControl1.Size = new Size(1161, 101);
            ribbonControl1.Size = new Size(1161, 128);
            ribbonControl1.ToolbarLocation = DevExpress.XtraBars.Ribbon.RibbonQuickAccessToolbarLocation.Hidden;
            // 
            // barBtnHydroCheck
@@ -149,49 +168,13 @@
            barBtnShowHide.Name = "barBtnShowHide";
            barBtnShowHide.ItemClick += barBtnShowHide_ItemClick;
            // 
            // barBtnMatching
            // barBtnMatchingList
            // 
            barBtnMatching.Caption = "自动匹配";
            barBtnMatching.Id = 10;
            barBtnMatching.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnMatching.ImageOptions.SvgImage");
            barBtnMatching.Name = "barBtnMatching";
            barBtnMatching.ItemClick += barBtnMatching_ItemClick;
            //
            // barBtnSingleMatching
            //
            barBtnSingleMatching.Caption = "构件配置";
            barBtnSingleMatching.Id = 13;
            barBtnSingleMatching.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSingleMatching.ImageOptions.SvgImage");
            barBtnSingleMatching.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] { new DevExpress.XtraBars.LinkPersistInfo(barBtnPumpMatching), new DevExpress.XtraBars.LinkPersistInfo(barBtnValveMatching), new DevExpress.XtraBars.LinkPersistInfo(barBtnPipeMatching), new DevExpress.XtraBars.LinkPersistInfo(barBtn) });
            barBtnSingleMatching.Name = "barBtnSingleMatching";
            //
            // barBtnPumpMatching
            //
            barBtnPumpMatching.Caption = "水泵";
            barBtnPumpMatching.Id = 14;
            barBtnPumpMatching.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnPumpMatching.ImageOptions.SvgImage");
            barBtnPumpMatching.Name = "barBtnPumpMatching";
            //
            // barBtnValveMatching
            //
            barBtnValveMatching.Caption = "阀门";
            barBtnValveMatching.Id = 15;
            barBtnValveMatching.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnValveMatching.ImageOptions.SvgImage");
            barBtnValveMatching.Name = "barBtnValveMatching";
            //
            // barBtnPipeMatching
            //
            barBtnPipeMatching.Caption = "管道";
            barBtnPipeMatching.Id = 16;
            barBtnPipeMatching.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnPipeMatching.ImageOptions.SvgImage");
            barBtnPipeMatching.Name = "barBtnPipeMatching";
            //
            // barBtn
            //
            barBtn.Caption = "弯头";
            barBtn.Id = 17;
            barBtn.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtn.ImageOptions.SvgImage");
            barBtn.Name = "barBtn";
            barBtnMatchingList.Caption = "自动匹配";
            barBtnMatchingList.Id = 10;
            barBtnMatchingList.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnMatchingList.ImageOptions.SvgImage");
            barBtnMatchingList.Name = "barBtnMatchingList";
            barBtnMatchingList.ItemClick += barBtnMatching_ItemClick;
            // 
            // barBtnUnMatchingList
            // 
@@ -201,6 +184,77 @@
            barBtnUnMatchingList.Name = "barBtnUnMatchingList";
            barBtnUnMatchingList.ItemClick += barBtnUnMatchingList_ItemClick;
            // 
            // barBtnSetList
            //
            barBtnSetList.Caption = "批量配置";
            barBtnSetList.Id = 21;
            barBtnSetList.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSetList.ImageOptions.SvgImage");
            barBtnSetList.Name = "barBtnSetList";
            barBtnSetList.ItemClick += barBtnSetList_ItemClick;
            //
            // barBtnSetPumpList
            //
            barBtnSetPumpList.Caption = "水泵";
            barBtnSetPumpList.CloseRadialMenuOnItemClick = true;
            barBtnSetPumpList.Id = 22;
            barBtnSetPumpList.Name = "barBtnSetPumpList";
            //
            // barBtnSetValveList
            //
            barBtnSetValveList.Caption = "阀门";
            barBtnSetValveList.CloseRadialMenuOnItemClick = true;
            barBtnSetValveList.Id = 23;
            barBtnSetValveList.Name = "barBtnSetValveList";
            //
            // barBtnSetPipeList
            //
            barBtnSetPipeList.Caption = "管道";
            barBtnSetPipeList.CloseRadialMenuOnItemClick = true;
            barBtnSetPipeList.Id = 24;
            barBtnSetPipeList.Name = "barBtnSetPipeList";
            //
            // barBtnSetElbowsList
            //
            barBtnSetElbowsList.Caption = "弯头";
            barBtnSetElbowsList.CloseRadialMenuOnItemClick = true;
            barBtnSetElbowsList.Id = 25;
            barBtnSetElbowsList.Name = "barBtnSetElbowsList";
            //
            // barBtnSetThreelinkList
            //
            barBtnSetThreelinkList.Caption = "三通";
            barBtnSetThreelinkList.CloseRadialMenuOnItemClick = true;
            barBtnSetThreelinkList.Id = 26;
            barBtnSetThreelinkList.Name = "barBtnSetThreelinkList";
            //
            // barBtnFourlinkList
            //
            barBtnFourlinkList.Caption = "四通";
            barBtnFourlinkList.CloseRadialMenuOnItemClick = true;
            barBtnFourlinkList.Id = 27;
            barBtnFourlinkList.Name = "barBtnFourlinkList";
            //
            // barBtnSetTranslationList
            //
            barBtnSetTranslationList.Caption = "过渡件";
            barBtnSetTranslationList.CloseRadialMenuOnItemClick = true;
            barBtnSetTranslationList.Id = 28;
            barBtnSetTranslationList.Name = "barBtnSetTranslationList";
            //
            // barBtnSetExchangerList
            //
            barBtnSetExchangerList.Caption = "换热器";
            barBtnSetExchangerList.CloseRadialMenuOnItemClick = true;
            barBtnSetExchangerList.Id = 29;
            barBtnSetExchangerList.Name = "barBtnSetExchangerList";
            //
            // barBtnSetJunctionList
            //
            barBtnSetJunctionList.Caption = "连接节点";
            barBtnSetJunctionList.CloseRadialMenuOnItemClick = true;
            barBtnSetJunctionList.Id = 30;
            barBtnSetJunctionList.Name = "barBtnSetJunctionList";
            //
            // ribbonPage1
            // 
            ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] { ribbonPageGroup1, ribbonPageGroup2, ribbonPageGroup3 });
@@ -209,10 +263,10 @@
            // 
            // ribbonPageGroup1
            // 
            ribbonPageGroup1.ItemLinks.Add(barBtnMatching);
            ribbonPageGroup1.ItemLinks.Add(barBtnMatchingList);
            ribbonPageGroup1.ItemLinks.Add(barBtnUnMatchingList);
            ribbonPageGroup1.ItemLinks.Add(barBtnSingleMatching);
            ribbonPageGroup1.ItemLinks.Add(barBtnShowHide);
            ribbonPageGroup1.ItemLinks.Add(barBtnSetList);
            ribbonPageGroup1.Name = "ribbonPageGroup1";
            ribbonPageGroup1.Text = "模型";
            // 
@@ -242,37 +296,66 @@
            tabPane1.Controls.Add(pageQ3d);
            tabPane1.Controls.Add(tabPageL3d);
            tabPane1.Dock = DockStyle.Fill;
            tabPane1.Location = new Point(0, 101);
            tabPane1.Location = new Point(0, 128);
            tabPane1.Name = "tabPane1";
            tabPane1.Pages.AddRange(new DevExpress.XtraBars.Navigation.NavigationPageBase[] { pageBimface, pageQ3d, tabPageL3d });
            tabPane1.RegularSize = new Size(886, 245);
            tabPane1.RegularSize = new Size(886, 182);
            tabPane1.SelectedPage = pageBimface;
            tabPane1.Size = new Size(886, 245);
            tabPane1.Size = new Size(886, 182);
            tabPane1.TabIndex = 1;
            tabPane1.Text = "tabPane1";
            // 
            // pageBimface
            // 
            pageBimface.Caption = "三维模型";
            pageBimface.Controls.Add(xhsProjectSimulationBimfaceCtrl1);
            pageBimface.Name = "pageBimface";
            pageBimface.Size = new Size(886, 212);
            pageBimface.Size = new Size(886, 149);
            //
            // xhsProjectSimulationBimfaceCtrl1
            //
            xhsProjectSimulationBimfaceCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationBimfaceCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationBimfaceCtrl1.Name = "xhsProjectSimulationBimfaceCtrl1";
            xhsProjectSimulationBimfaceCtrl1.Size = new Size(886, 149);
            xhsProjectSimulationBimfaceCtrl1.TabIndex = 0;
            xhsProjectSimulationBimfaceCtrl1.HydroClickEvent += xhsProjectSimulationBimfaceCtrl1_HydroClickEvent;
            xhsProjectSimulationBimfaceCtrl1.LoadCompletedEvent += xhsProjectSimulationBimfaceCtrl1_LoadCompletedEvent;
            // 
            // pageQ3d
            // 
            pageQ3d.Caption = "水力模型";
            pageQ3d.Controls.Add(xhsProjectSimulationQ3dCtrl1);
            pageQ3d.Name = "pageQ3d";
            pageQ3d.Size = new Size(886, 185);
            //
            // xhsProjectSimulationQ3dCtrl1
            //
            xhsProjectSimulationQ3dCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationQ3dCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationQ3dCtrl1.Name = "xhsProjectSimulationQ3dCtrl1";
            xhsProjectSimulationQ3dCtrl1.Size = new Size(886, 185);
            xhsProjectSimulationQ3dCtrl1.TabIndex = 0;
            // 
            // tabPageL3d
            // 
            tabPageL3d.Caption = "L3d";
            tabPageL3d.Controls.Add(xhsProjectSimulationL3dCtrl1);
            tabPageL3d.Name = "tabPageL3d";
            tabPageL3d.Size = new Size(886, 185);
            //
            // xhsProjectSimulationL3dCtrl1
            //
            xhsProjectSimulationL3dCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationL3dCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationL3dCtrl1.Name = "xhsProjectSimulationL3dCtrl1";
            xhsProjectSimulationL3dCtrl1.Size = new Size(886, 185);
            xhsProjectSimulationL3dCtrl1.TabIndex = 0;
            // 
            // dockManager1
            // 
            dockManager1.Form = this;
            dockManager1.RootPanels.AddRange(new DevExpress.XtraBars.Docking.DockPanel[] { docPnlProperty, docPnlMatchingList, docPnlHydroParterList, docPnlHydroCalcu, docPnlHydroCheck, docPnlUnMatchingList });
            dockManager1.RootPanels.AddRange(new DevExpress.XtraBars.Docking.DockPanel[] { docPnlProperty, docPnlHydroParterList, docPnlHydroCalcu, docPnlHydroCheck, docPnlUnMatchingList, docPnlMatchingList });
            dockManager1.TopZIndexControls.AddRange(new string[] { "DevExpress.XtraBars.BarDockControl", "DevExpress.XtraBars.StandaloneBarDockControl", "System.Windows.Forms.MenuStrip", "System.Windows.Forms.StatusStrip", "System.Windows.Forms.StatusBar", "DevExpress.XtraBars.Ribbon.RibbonStatusBar", "DevExpress.XtraBars.Ribbon.RibbonControl", "DevExpress.XtraBars.Navigation.OfficeNavigationBar", "DevExpress.XtraBars.Navigation.TileNavPane", "DevExpress.XtraBars.TabFormControl", "DevExpress.XtraBars.FluentDesignSystem.FluentDesignFormControl", "DevExpress.XtraBars.ToolbarForm.ToolbarFormControl" });
            // 
            // docPnlProperty
@@ -280,38 +363,27 @@
            docPnlProperty.Controls.Add(dockPanel1_Container);
            docPnlProperty.Dock = DevExpress.XtraBars.Docking.DockingStyle.Right;
            docPnlProperty.ID = new Guid("cffe2560-3445-4488-83cf-b9e4b936ff18");
            docPnlProperty.Location = new Point(886, 101);
            docPnlProperty.Location = new Point(886, 128);
            docPnlProperty.Name = "docPnlProperty";
            docPnlProperty.OriginalSize = new Size(275, 200);
            docPnlProperty.Size = new Size(275, 638);
            docPnlProperty.Size = new Size(275, 611);
            docPnlProperty.Text = "属性";
            // 
            // dockPanel1_Container
            // 
            dockPanel1_Container.Controls.Add(xhsProjectSimulationPropertyCtrl1);
            dockPanel1_Container.Location = new Point(4, 26);
            dockPanel1_Container.Name = "dockPanel1_Container";
            dockPanel1_Container.Size = new Size(268, 609);
            dockPanel1_Container.Size = new Size(268, 582);
            dockPanel1_Container.TabIndex = 0;
            // 
            // docPnlMatchingList
            // xhsProjectSimulationPropertyCtrl1
            // 
            docPnlMatchingList.Controls.Add(controlContainer5);
            docPnlMatchingList.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
            docPnlMatchingList.FloatVertical = true;
            docPnlMatchingList.ID = new Guid("19fbbff8-5202-46bc-b9f4-472249e3c49a");
            docPnlMatchingList.Location = new Point(0, 597);
            docPnlMatchingList.Name = "docPnlMatchingList";
            docPnlMatchingList.OriginalSize = new Size(200, 59);
            docPnlMatchingList.Size = new Size(886, 59);
            docPnlMatchingList.Text = "匹配列表";
            //
            // controlContainer5
            //
            controlContainer5.Controls.Add(xhsProjectSimulationMatchingListCtrl1);
            controlContainer5.Location = new Point(3, 27);
            controlContainer5.Name = "controlContainer5";
            controlContainer5.Size = new Size(880, 29);
            controlContainer5.TabIndex = 0;
            xhsProjectSimulationPropertyCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationPropertyCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationPropertyCtrl1.Name = "xhsProjectSimulationPropertyCtrl1";
            xhsProjectSimulationPropertyCtrl1.Size = new Size(268, 582);
            xhsProjectSimulationPropertyCtrl1.TabIndex = 0;
            // 
            // docPnlHydroParterList
            // 
@@ -319,7 +391,7 @@
            docPnlHydroParterList.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
            docPnlHydroParterList.FloatVertical = true;
            docPnlHydroParterList.ID = new Guid("facc1bde-3cf7-455c-b59c-8377daa6b90e");
            docPnlHydroParterList.Location = new Point(0, 518);
            docPnlHydroParterList.Location = new Point(0, 660);
            docPnlHydroParterList.Name = "docPnlHydroParterList";
            docPnlHydroParterList.OriginalSize = new Size(200, 79);
            docPnlHydroParterList.Size = new Size(886, 79);
@@ -349,7 +421,7 @@
            docPnlHydroCalcu.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
            docPnlHydroCalcu.FloatVertical = true;
            docPnlHydroCalcu.ID = new Guid("ac7055c0-e9fe-40c2-bf51-83dde5710cd4");
            docPnlHydroCalcu.Location = new Point(0, 434);
            docPnlHydroCalcu.Location = new Point(0, 576);
            docPnlHydroCalcu.Name = "docPnlHydroCalcu";
            docPnlHydroCalcu.OriginalSize = new Size(200, 84);
            docPnlHydroCalcu.Size = new Size(886, 84);
@@ -357,17 +429,27 @@
            // 
            // controlContainer2
            // 
            controlContainer2.Controls.Add(xhsProjectSimulationHydroCalcuFailedCtrl1);
            controlContainer2.Location = new Point(3, 27);
            controlContainer2.Name = "controlContainer2";
            controlContainer2.Size = new Size(880, 54);
            controlContainer2.TabIndex = 0;
            // 
            // xhsProjectSimulationHydroCalcuFailedCtrl1
            //
            xhsProjectSimulationHydroCalcuFailedCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationHydroCalcuFailedCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationHydroCalcuFailedCtrl1.Name = "xhsProjectSimulationHydroCalcuFailedCtrl1";
            xhsProjectSimulationHydroCalcuFailedCtrl1.Size = new Size(880, 54);
            xhsProjectSimulationHydroCalcuFailedCtrl1.TabIndex = 0;
            //
            // docPnlHydroCheck
            // 
            docPnlHydroCheck.Controls.Add(controlContainer1);
            docPnlHydroCheck.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
            docPnlHydroCheck.FloatVertical = true;
            docPnlHydroCheck.ID = new Guid("dee18895-8b3d-44cd-9001-28bee516095d");
            docPnlHydroCheck.Location = new Point(0, 346);
            docPnlHydroCheck.Location = new Point(0, 488);
            docPnlHydroCheck.Name = "docPnlHydroCheck";
            docPnlHydroCheck.OriginalSize = new Size(200, 88);
            docPnlHydroCheck.SavedDock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
@@ -377,17 +459,27 @@
            // 
            // controlContainer1
            // 
            controlContainer1.Controls.Add(xhsProjectSimulationHydroCheckFailedCtrl1);
            controlContainer1.Location = new Point(3, 27);
            controlContainer1.Name = "controlContainer1";
            controlContainer1.Size = new Size(880, 58);
            controlContainer1.TabIndex = 0;
            // 
            // xhsProjectSimulationHydroCheckFailedCtrl1
            //
            xhsProjectSimulationHydroCheckFailedCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationHydroCheckFailedCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationHydroCheckFailedCtrl1.Name = "xhsProjectSimulationHydroCheckFailedCtrl1";
            xhsProjectSimulationHydroCheckFailedCtrl1.Size = new Size(880, 58);
            xhsProjectSimulationHydroCheckFailedCtrl1.TabIndex = 0;
            //
            // docPnlUnMatchingList
            // 
            docPnlUnMatchingList.Controls.Add(controlContainer4);
            docPnlUnMatchingList.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
            docPnlUnMatchingList.FloatVertical = true;
            docPnlUnMatchingList.ID = new Guid("fdc5c4e2-7bd3-4114-90a6-3cd0ed365103");
            docPnlUnMatchingList.Location = new Point(0, 346);
            docPnlUnMatchingList.Location = new Point(0, 405);
            docPnlUnMatchingList.Name = "docPnlUnMatchingList";
            docPnlUnMatchingList.OriginalSize = new Size(200, 83);
            docPnlUnMatchingList.Size = new Size(886, 83);
@@ -395,28 +487,71 @@
            // 
            // controlContainer4
            // 
            controlContainer4.Controls.Add(xhsProjectSimulationUnMatchingListCtrl1);
            controlContainer4.Location = new Point(3, 27);
            controlContainer4.Name = "controlContainer4";
            controlContainer4.Size = new Size(880, 53);
            controlContainer4.TabIndex = 0;
            // 
            // svgImg32
            // xhsProjectSimulationUnMatchingListCtrl1
            // 
            svgImg32.ImageSize = new Size(32, 32);
            svgImg32.Add("calculatesheet", "image://svgimages/spreadsheet/calculatesheet.svg");
            xhsProjectSimulationUnMatchingListCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationUnMatchingListCtrl1.HidePageWhenListIsNull = true;
            xhsProjectSimulationUnMatchingListCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationUnMatchingListCtrl1.Name = "xhsProjectSimulationUnMatchingListCtrl1";
            xhsProjectSimulationUnMatchingListCtrl1.Size = new Size(880, 53);
            xhsProjectSimulationUnMatchingListCtrl1.TabIndex = 0;
            xhsProjectSimulationUnMatchingListCtrl1.HydroClickEvent += xhsProjectSimulationUnMatchingListCtrl1_HydroClickEvent;
            xhsProjectSimulationUnMatchingListCtrl1.ViewModelEvent += xhsProjectSimulationUnMatchingListCtrl1_ViewModelEvent;
            // 
            // radialMenu1
            // docPnlMatchingList
            // 
            radialMenu1.Name = "radialMenu1";
            radialMenu1.Ribbon = ribbonControl1;
            docPnlMatchingList.Controls.Add(controlContainer5);
            docPnlMatchingList.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom;
            docPnlMatchingList.FloatVertical = true;
            docPnlMatchingList.ID = new Guid("19fbbff8-5202-46bc-b9f4-472249e3c49a");
            docPnlMatchingList.Location = new Point(0, 310);
            docPnlMatchingList.Name = "docPnlMatchingList";
            docPnlMatchingList.OriginalSize = new Size(200, 95);
            docPnlMatchingList.Size = new Size(886, 95);
            docPnlMatchingList.Text = "匹配列表";
            //
            // controlContainer5
            //
            controlContainer5.Controls.Add(xhsProjectSimulationMatchingListCtrl1);
            controlContainer5.Location = new Point(3, 27);
            controlContainer5.Name = "controlContainer5";
            controlContainer5.Size = new Size(880, 65);
            controlContainer5.TabIndex = 0;
            // 
            // xhsProjectSimulationMatchingListCtrl1
            // 
            xhsProjectSimulationMatchingListCtrl1.Dock = DockStyle.Fill;
            xhsProjectSimulationMatchingListCtrl1.Location = new Point(0, 0);
            xhsProjectSimulationMatchingListCtrl1.Name = "xhsProjectSimulationMatchingListCtrl1";
            xhsProjectSimulationMatchingListCtrl1.Size = new Size(880, 29);
            xhsProjectSimulationMatchingListCtrl1.Size = new Size(880, 65);
            xhsProjectSimulationMatchingListCtrl1.TabIndex = 0;
            //
            // svgImg32
            //
            svgImg32.ImageSize = new Size(32, 32);
            svgImg32.Add("calculatesheet", "image://svgimages/spreadsheet/calculatesheet.svg");
            //
            // rmSet
            //
            rmSet.AllowGlyphSkinning = true;
            rmSet.Glyph = (Image)resources.GetObject("rmSet.Glyph");
            rmSet.ItemLinks.Add(barBtnSetPumpList);
            rmSet.ItemLinks.Add(barBtnSetValveList);
            rmSet.ItemLinks.Add(barBtnSetPipeList);
            rmSet.ItemLinks.Add(barBtnSetElbowsList);
            rmSet.ItemLinks.Add(barBtnSetThreelinkList);
            rmSet.ItemLinks.Add(barBtnFourlinkList);
            rmSet.ItemLinks.Add(barBtnSetTranslationList);
            rmSet.ItemLinks.Add(barBtnSetExchangerList);
            rmSet.ItemLinks.Add(barBtnSetJunctionList);
            rmSet.Name = "rmSet";
            rmSet.Ribbon = ribbonControl1;
            // 
            // XhsProjectSimulationCorePage
            // 
@@ -425,12 +560,12 @@
            AutoScaleDimensions = new SizeF(7F, 14F);
            AutoScaleMode = AutoScaleMode.Font;
            Controls.Add(tabPane1);
            Controls.Add(docPnlMatchingList);
            Controls.Add(docPnlUnMatchingList);
            Controls.Add(docPnlHydroCheck);
            Controls.Add(docPnlHydroCalcu);
            Controls.Add(docPnlHydroParterList);
            Controls.Add(docPnlMatchingList);
            Controls.Add(docPnlProperty);
            Controls.Add(docPnlUnMatchingList);
            Controls.Add(ribbonControl1);
            Margin = new Padding(2);
            Name = "XhsProjectSimulationCorePage";
@@ -438,17 +573,24 @@
            ((ISupportInitialize)ribbonControl1).EndInit();
            ((ISupportInitialize)tabPane1).EndInit();
            tabPane1.ResumeLayout(false);
            pageBimface.ResumeLayout(false);
            pageQ3d.ResumeLayout(false);
            tabPageL3d.ResumeLayout(false);
            ((ISupportInitialize)dockManager1).EndInit();
            docPnlProperty.ResumeLayout(false);
            docPnlMatchingList.ResumeLayout(false);
            controlContainer5.ResumeLayout(false);
            dockPanel1_Container.ResumeLayout(false);
            docPnlHydroParterList.ResumeLayout(false);
            controlContainer3.ResumeLayout(false);
            docPnlHydroCalcu.ResumeLayout(false);
            controlContainer2.ResumeLayout(false);
            docPnlHydroCheck.ResumeLayout(false);
            controlContainer1.ResumeLayout(false);
            docPnlUnMatchingList.ResumeLayout(false);
            controlContainer4.ResumeLayout(false);
            docPnlMatchingList.ResumeLayout(false);
            controlContainer5.ResumeLayout(false);
            ((ISupportInitialize)svgImg32).EndInit();
            ((ISupportInitialize)radialMenu1).EndInit();
            ((ISupportInitialize)rmSet).EndInit();
            ResumeLayout(false);
            PerformLayout();
        }
@@ -467,12 +609,7 @@
        private DevExpress.XtraBars.BarButtonItem barBtnShowHide;
        private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup4;
        private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup3;
        private DevExpress.XtraBars.BarButtonItem barBtnMatching;
        private DevExpress.XtraBars.BarSubItem barBtnSingleMatching;
        private DevExpress.XtraBars.BarButtonItem barBtnPumpMatching;
        private DevExpress.XtraBars.BarButtonItem barBtnValveMatching;
        private DevExpress.XtraBars.BarButtonItem barBtnPipeMatching;
        private DevExpress.XtraBars.BarButtonItem barBtn;
        private DevExpress.XtraBars.BarButtonItem barBtnMatchingList;
        private DevExpress.XtraBars.Navigation.TabPane tabPane1;
        private DevExpress.XtraBars.Navigation.TabNavigationPage pageBimface;
        private DevExpress.XtraBars.Navigation.TabNavigationPage pageQ3d;
@@ -498,9 +635,19 @@
        private DevExpress.XtraBars.Navigation.TabNavigationPage tabPageL3d;
        private DevExpress.XtraBars.Docking.DockPanel docPnlMatchingList;
        private DevExpress.XtraBars.Docking.ControlContainer controlContainer5;
         private XhsProjectSimulationUnMatchingListCtrl xhsProjectSimulationUnMatchingListCtrl1;
        private XhsProjectSimulationUnMatchingListCtrl xhsProjectSimulationUnMatchingListCtrl1;
        private XhsProjectSimulationL3dCtrl xhsProjectSimulationL3dCtrl1;
        private DevExpress.XtraBars.Ribbon.RadialMenu radialMenu1;
        private DevExpress.XtraBars.Ribbon.RadialMenu rmSet;
        private Xhs.XhsProjectSimulationMatchingListCtrl xhsProjectSimulationMatchingListCtrl1;
        private DevExpress.XtraBars.BarButtonItem barBtnSetList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetPumpList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetValveList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetPipeList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetElbowsList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetThreelinkList;
        private DevExpress.XtraBars.BarButtonItem barBtnFourlinkList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetTranslationList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetExchangerList;
        private DevExpress.XtraBars.BarButtonItem barBtnSetJunctionList;
    }
}
WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs
@@ -229,7 +229,7 @@
            this.docPnlMatchingList.Height = 350;
        }
        #endregion 自动匹配
        #endregion
        #region 未匹配列表
@@ -259,6 +259,7 @@
            var elementIds = new List<string>() { _parter.Code };
            await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(elementIds);
            ShowProperty();
            SetBimfaceLinkColor();
        }
        //未匹配列表查看模型
@@ -270,7 +271,7 @@
            ShowProperty();
        }
        #endregion 未匹配列表
        #endregion
        #region 一键显隐
@@ -300,7 +301,7 @@
            }
        }
        #endregion 一键显隐
        #endregion
        #region 水力校验
@@ -343,7 +344,7 @@
            ShowProperty();
        }
        #endregion 水力校验
        #endregion
        #region 保存水力信息
@@ -364,7 +365,7 @@
            TipFormHelper.ShowSucceed("保存成功!");
        }
        #endregion 保存水力信息
        #endregion
        #region 业务方法
@@ -419,5 +420,17 @@
        }
        #endregion 业务方法
        #region 配置
        //显示RadialMenu
        private void barBtnSetList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            this.rmSet.ShowPopup(MousePosition, true);
        }
        #endregion
    }
}
WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.resx
@@ -262,7 +262,7 @@
        MC45LTItMnMwLjktMiwyLTJTMjYsMjIuOSwyNiwyNHoiIGNsYXNzPSJCbGFjayIgLz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtnMatching.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
  <data name="barBtnMatchingList.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
@@ -282,128 +282,6 @@
        LjMtMC42LDQuNC0xLjljMS4xLTEuMywxLjYtMywxLjYtNS4yYzAtMi0wLjUtMy43LTEuNi00LjljLTEu
        MS0xLjMtMi41LTEuOS00LjItMS45ICBjLTEuOSwwLTMuNCwwLjYtNC41LDEuOUM4LjYsMTMuMiw4LDE1
        LDgsMTcuMnoiIGNsYXNzPSJHcmVlbiIgLz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtnSingleMatching.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFkEAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iUGl2b3RfVGFibGVfT3B0aW9ucyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3Jv
        dW5kOm5ldyAwIDAgMzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDoj
        MTE3N0Q3O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLnN0MHtvcGFjaXR5OjAuNTt9Cjwvc3R5bGU+
        DQogIDxnIGNsYXNzPSJzdDAiPg0KICAgIDxwYXRoIGQ9Ik0xMCwxMEg2VjZoNFYxMHogTTI0LDZIMTJ2
        NGgxMlY2eiBNMTAsMTJINnYxMmg0VjEyeiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCiAgPHBhdGgg
        ZD0iTTE2LDI2SDRWNGgyMnYxMmMwLjcsMC4yLDEuNCwwLjUsMiwwLjhWM2MwLTAuNi0wLjQtMS0xLTFI
        M0MyLjQsMiwyLDIuNCwyLDN2MjRjMCwwLjYsMC40LDEsMSwxaDEzLjggIEMxNi41LDI3LjQsMTYuMiwy
        Ni43LDE2LDI2eiIgY2xhc3M9IkJsYWNrIiAvPg0KICA8cGF0aCBkPSJNMzIsMjV2LTJsLTIuMi0wLjRj
        LTAuMi0wLjYtMC40LTEuMy0wLjgtMS44bDEuMy0xLjhsLTEuNC0xLjRsLTEuOCwxLjNjLTAuNS0wLjMt
        MS4yLTAuNi0xLjgtMC43TDI1LDE2aC0yICBsLTAuNCwyLjJjLTAuNiwwLjItMS4zLDAuNC0xLjgsMC43
        bC0xLjgtMS4zbC0xLjQsMS40bDEuMywxLjhjLTAuMywwLjUtMC42LDEuMi0wLjgsMS44TDE2LDIzdjJs
        Mi4yLDAuNGMwLjIsMC42LDAuNCwxLjMsMC44LDEuOCAgbC0xLjMsMS44bDEuNCwxLjRsMS44LTEuM2Mw
        LjUsMC4zLDEuMiwwLjYsMS44LDAuN0wyMywzMmgybDAuNC0yLjJjMC42LTAuMiwxLjMtMC40LDEuOC0w
        LjdsMS44LDEuM2wxLjQtMS40bC0xLjMtMS44ICBjMC4zLTAuNSwwLjYtMS4yLDAuOC0xLjhMMzIsMjV6
        IE0yNCwyNmMtMS4xLDAtMi0wLjktMi0yczAuOS0yLDItMmMxLjEsMCwyLDAuOSwyLDJTMjUuMSwyNiwy
        NCwyNnoiIGNsYXNzPSJCbHVlIiAvPg0KPC9zdmc+Cw==
</value>
  </data>
  <data name="barBtnPumpMatching.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
        WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
        OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
        Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
        Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w
        LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu
        NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3
        LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww
        LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww
        LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz
        LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x
        NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y
        LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtnValveMatching.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
        WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
        OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
        Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
        Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w
        LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu
        NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3
        LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww
        LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww
        LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz
        LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x
        NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y
        LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtnPipeMatching.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
        WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
        OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
        Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
        Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w
        LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu
        NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3
        LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww
        LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww
        LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz
        LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x
        NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y
        LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtn.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
        WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
        OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
        Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
        Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w
        LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu
        NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3
        LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww
        LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww
        LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz
        LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x
        NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y
        LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtnUnMatchingList.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -427,13 +305,53 @@
        L3N2Zz4L
</value>
  </data>
  <data name="barBtnSetList.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
        WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
        OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
        Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
        Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w
        LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu
        NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3
        LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww
        LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww
        LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz
        LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x
        NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y
        LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
  </data>
  <metadata name="dockManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>179, 21</value>
  </metadata>
  <metadata name="svgImg32.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>45, 22</value>
  </metadata>
  <metadata name="radialMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
  <metadata name="rmSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>323, 21</value>
  </metadata>
  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  <data name="rmSet.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAArdEVYdFRpdGxlAFNldHVwO0N1c3RvbWl6O0Rlc2ln
        bjtTZXR0aW5nO1Byb3BlcnQ4H7UhAAABzElEQVRYR8WWS07DQBBEswIkYAE3YkkkLgJHYMcJ+G7gEnwk
        4AzAno9YorCEG5gqyx61O9WOnUnw4kXWTHV1xZ+ZGRVFMSjlz97RY192wQQUFbzmmNKG5ASwzW0IpQ3J
        CeCb1yhtSFuAFXACXsE5WAV2XjUnVsMa1tLjGNDTzocBKLwG1vge0HAL7FdjCs5RQy1r7Bw9GyGiAKfA
        FtY8gR83pqDm2Y3V0Dv1igK8A1W8CD5A6hUFuASqeBFcgdQrCrAGHoAyyIGejZc5CkAYInqO8/AC/JfU
        GmAb/AJlRm7BDtio4PUdUFpCL3o2+rQFOADKiBwCVUM4p2oIPRt6G8Cv7RH8lw0TAe+OqrWUe4cN0KU5
        4a32DT3UqFrPxAZQAsUm8A091KjaKZYVgC+lqp3CBhjiEXzbAGMOmMkIvmC+oafLS/gFxjaA598/Q8+s
        hegG8FavV/C67Z/3Xoi4bHL5VGbzwGW981JM4TI2o/pQk3pFAQbfjj+BKl4E9E69ogDRkYzPMfdIdgZS
        ryjArENp2yfKuexDKaGQx/I3cAH8G2yNLVbDGtbSo9exvAuqOVHakJwAau/gUq60ITkB/N5Rru1AaUNS
        gOEoRn8K5LVvQjKRrgAAAABJRU5ErkJggg==
</value>
  </data>
</root>