NodeMVVMManagement不再是静态类,而是运行环境内部的成员。

This commit is contained in:
fengjiayi
2025-03-18 12:33:54 +08:00
parent fffb22b3a8
commit 87402ec7ea
14 changed files with 110 additions and 77 deletions

View File

@@ -42,7 +42,7 @@ namespace Serein.NodeFlow.Env
};
this.FlowLibraryManagement = new FlowLibraryManagement(this); // 实例化类库管理
this.NodeMVVMManagement = new NodeMVVMManagement();
#region
NodeMVVMManagement.RegisterModel(NodeControlType.UI, typeof(SingleUINode)); // 动作节点
@@ -214,6 +214,11 @@ namespace Serein.NodeFlow.Env
/// </summary>
public UIContextOperation UIContextOperation { get; set; }
/// <summary>
/// 节点视图模型管理类
/// </summary>
public NodeMVVMManagement NodeMVVMManagement { get; set; }
/// <summary>
/// 信息输出等级
/// </summary>
@@ -654,12 +659,12 @@ namespace Serein.NodeFlow.Env
/// <summary>
/// 加载本地程序集
/// </summary>
/// <param name="assembly"></param>
public void LoadLibrary(Assembly assembly)
/// <param name="flowLibrary"></param>
public void LoadLibrary(FlowLibrary flowLibrary)
{
try
{
(var libraryInfo, var mdInfos) = FlowLibraryManagement.LoadLibraryOfPath(assembly);
(var libraryInfo, var mdInfos) = FlowLibraryManagement.LoadLibraryOfPath(flowLibrary);
if (mdInfos.Count > 0)
{
UIContextOperation?.Invoke(() => OnDllLoad?.Invoke(new LoadDllEventArgs(libraryInfo, mdInfos))); // 通知UI创建dll面板显示