From b31eb505e4045895bce185fb0e4c1f20a0220365 Mon Sep 17 00:00:00 2001 From: "CHEN-ZW\\acer" Date: Tue, 21 Oct 2025 13:53:04 +0800 Subject: [PATCH] 1 --- .../c#前端/SWS.CAD.Base/SWS.CAD.Base.csproj | 2 +- newFront/c#前端/SWS.CAD/Start.cs | 136 ++++++++++-------- .../SWS.CAD/ViewModels/LeftPanelViewModel.cs | 2 +- newFront/c#前端/SWS.CAD/Views/LeftPanel.xaml | 47 +++--- newFront/c#前端/SWS.Service/HttpService.cs | 36 ++--- .../c#前端/SWS.Share/LayoutTagInfoBrief.cs | 5 +- 6 files changed, 125 insertions(+), 103 deletions(-) diff --git a/newFront/c#前端/SWS.CAD.Base/SWS.CAD.Base.csproj b/newFront/c#前端/SWS.CAD.Base/SWS.CAD.Base.csproj index 9412e79b..d5dafe0e 100644 --- a/newFront/c#前端/SWS.CAD.Base/SWS.CAD.Base.csproj +++ b/newFront/c#前端/SWS.CAD.Base/SWS.CAD.Base.csproj @@ -21,7 +21,7 @@ DEBUG;TRACE prompt 4 - x64 + AnyCPU pdbonly diff --git a/newFront/c#前端/SWS.CAD/Start.cs b/newFront/c#前端/SWS.CAD/Start.cs index 9557004b..d38c6600 100644 --- a/newFront/c#前端/SWS.CAD/Start.cs +++ b/newFront/c#前端/SWS.CAD/Start.cs @@ -1,4 +1,8 @@ -using Prism.DryIoc; +using System.Linq; +using System.Reflection; +using System; +using System.Windows; +using Prism.DryIoc; using Prism.Events; using Prism.Ioc; using Prism.Services.Dialogs; @@ -9,6 +13,7 @@ using SWS.Commons; using SWS.Service; using SWS.WPF.ViewModels; using SWS.WPF.Views; +using Telerik.Windows.Controls; using Unity; namespace SWS.CAD { @@ -17,67 +22,82 @@ namespace SWS.CAD public static void RegisterTypes() { - GlobalObject.container = new UnityContainer(); - GlobalObject.container.RegisterSingleton(); + try + { + GlobalObject.container = new UnityContainer(); + // 启用诊断 + GlobalObject.container.AddExtension(new Diagnostic()); + GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - //GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); - GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + //GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); + GlobalObject.container.RegisterSingleton(); - GlobalObject._prismContainer = new DryIocContainerExtension(); - GlobalObject._prismContainer.Register(); - GlobalObject._prismContainer.Register(); - //后者类似于一个容器。给所有需要的dialog所用 - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); - GlobalObject._prismContainer.RegisterDialog(); + + + GlobalObject._prismContainer = new DryIocContainerExtension(); + GlobalObject._prismContainer.Register(); + GlobalObject._prismContainer.Register(); + //后者类似于一个容器。给所有需要的dialog所用 + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + GlobalObject._prismContainer.RegisterDialog(); + } + catch (System.Exception ex) + { + // 记录异常详细信息 + MessageBox.Show($"启动时发生错误: {ex.ToString()}", "错误", MessageBoxButton.OK, MessageBoxImage.Error); + } + } + + } } diff --git a/newFront/c#前端/SWS.CAD/ViewModels/LeftPanelViewModel.cs b/newFront/c#前端/SWS.CAD/ViewModels/LeftPanelViewModel.cs index c476f065..d6530361 100644 --- a/newFront/c#前端/SWS.CAD/ViewModels/LeftPanelViewModel.cs +++ b/newFront/c#前端/SWS.CAD/ViewModels/LeftPanelViewModel.cs @@ -1954,7 +1954,7 @@ namespace SWS.CAD.ViewModels var historyDrawingsTree = await _dwgService.GetDrawingCatalogue(); historyDrawingsTree = CheckInOutStatus(historyDrawingsTree); var listHistory = await _dwgService.GetPublishedDwg(); - if (listHistory.Any()) + if (listHistory!=null&& listHistory.Any()) { //历史树1 //historyDrawings = FilterHistoryTree(historyDrawingsTree, listHistory); diff --git a/newFront/c#前端/SWS.CAD/Views/LeftPanel.xaml b/newFront/c#前端/SWS.CAD/Views/LeftPanel.xaml index b2b277ab..8e35bf64 100644 --- a/newFront/c#前端/SWS.CAD/Views/LeftPanel.xaml +++ b/newFront/c#前端/SWS.CAD/Views/LeftPanel.xaml @@ -2,12 +2,12 @@ x:Class="SWS.CAD.Views.LeftPanel" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + xmlns:Behaviors="clr-namespace:SWS.Commons.Helper.Behaviours;assembly=SWS.Commons" xmlns:converter="clr-namespace:SWS.CAD.Converter" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:i="http://schemas.microsoft.com/xaml/behaviors" xmlns:local="clr-namespace:SWS.CAD.Views" xmlns:local2="clr-namespace:SWS.Model;assembly=SWS.Model" - xmlns:Behaviors="clr-namespace:SWS.Commons.Helper.Behaviours;assembly=SWS.Commons" xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" Width="250" Loaded="UserControl_Loaded"> @@ -188,12 +188,12 @@ x:Name="radTreeView" Grid.Row="2" Grid.ColumnSpan="2" - Background="Transparent" Margin="-5,0,0,0" + Behaviors:TreeViewSelectedItemBehavior.SelectedItem="{Binding selectedNode, Mode=TwoWay}" + Background="Transparent" FontSize="11" ItemsSource="{Binding Drawings}" - PreviewMouseRightButtonDown="RadTreeView_PreviewMouseRightButtonDown" - Behaviors:TreeViewSelectedItemBehavior.SelectedItem="{Binding selectedNode, Mode=TwoWay}"> + PreviewMouseRightButtonDown="RadTreeView_PreviewMouseRightButtonDown"> + PreviewMouseRightButtonDown="treeDwgHistory_PreviewMouseRightButtonDown">