From b83f4fad7f9a209ad1c07bb1447d5d6c25464566 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=89=BE=E7=AB=B9?= Date: Sun, 27 Aug 2023 23:03:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=80=E4=B8=8B=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AIStudio.Wpf.DiagramDesigner.csproj | 1 + .../Models/Values/ConstParameter.cs | 2 +- .../Container/BlockItemsContainerInfo.cs | 10 ++++++++++ .../BlockViewModel/BlockDesignerItemViewModel.cs | 13 +++++++++++++ 4 files changed, 25 insertions(+), 1 deletion(-) diff --git a/AIStudio.Wpf.DiagramDesigner/AIStudio.Wpf.DiagramDesigner.csproj b/AIStudio.Wpf.DiagramDesigner/AIStudio.Wpf.DiagramDesigner.csproj index 5c56737..83c64dd 100644 --- a/AIStudio.Wpf.DiagramDesigner/AIStudio.Wpf.DiagramDesigner.csproj +++ b/AIStudio.Wpf.DiagramDesigner/AIStudio.Wpf.DiagramDesigner.csproj @@ -31,6 +31,7 @@ + diff --git a/AIStudio.Wpf.DiagramDesigner/Models/Values/ConstParameter.cs b/AIStudio.Wpf.DiagramDesigner/Models/Values/ConstParameter.cs index 5d9f111..5602648 100644 --- a/AIStudio.Wpf.DiagramDesigner/Models/Values/ConstParameter.cs +++ b/AIStudio.Wpf.DiagramDesigner/Models/Values/ConstParameter.cs @@ -11,7 +11,7 @@ namespace AIStudio.Wpf.DiagramDesigner public ConstParameter(ConstParameterItem item) { Text = item.Text; - Value = item.Value.ToString(); + Value = item.Value?.ToString(); } private string _text; diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs index c0e10dc..b0d4df7 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs @@ -351,5 +351,15 @@ namespace AIStudio.Wpf.DiagramDesigner return null; } } + + public override void Dispose() + { + base.Dispose(); + + foreach (var child in Children) + { + child.Dispose(); + } + } } } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs index efb7a0a..5b2f417 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs @@ -530,6 +530,19 @@ namespace AIStudio.Wpf.DiagramDesigner return null; } #endregion + + public override void Dispose() + { + base.Dispose(); + + if (ParentContainer == null) + { + foreach (var container in Containers) + { + container.Dispose(); + } + } + } } #region 扩展