mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-03-03 00:00:57 +08:00
自定义group完成
This commit is contained in:
@@ -364,7 +364,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
SetProperty(ref _cellVerticalAlignment, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private bool _isEditName;
|
||||
[Browsable(false)]
|
||||
@@ -1701,9 +1701,19 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
private void ExecuteGroupCommand(object parameter)
|
||||
{
|
||||
List<DesignerItemViewModelBase> items;
|
||||
GroupDesignerItemViewModel groupItem = null;
|
||||
if (parameter is IEnumerable<DesignerItemViewModelBase> para)
|
||||
{
|
||||
items = para.ToList();
|
||||
if (para.FirstOrDefault() is GroupDesignerItemViewModel groupDesignerItemViewModel && groupDesignerItemViewModel.Custom)
|
||||
{
|
||||
groupDesignerItemViewModel.Custom = false;
|
||||
groupItem = groupDesignerItemViewModel;
|
||||
items = para.Skip(1).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
items = para.ToList();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1712,7 +1722,10 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
|
||||
RectangleBase rect = GetBoundingRectangle(items);
|
||||
|
||||
GroupDesignerItemViewModel groupItem = new GroupDesignerItemViewModel();
|
||||
if (groupItem == null)
|
||||
{
|
||||
groupItem = new GroupDesignerItemViewModel();
|
||||
}
|
||||
groupItem.IsGroup = true;
|
||||
groupItem.ItemWidth = rect.Width;
|
||||
groupItem.ItemHeight = rect.Height;
|
||||
|
||||
@@ -4,6 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using AIStudio.Wpf.DiagramDesigner;
|
||||
using AIStudio.Wpf.DiagramDesigner.Models;
|
||||
|
||||
namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
@@ -19,6 +20,16 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
|
||||
}
|
||||
|
||||
public GroupDesignerItemViewModel(IDiagramViewModel root, SelectableItemBase designer) : base(root, designer)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public GroupDesignerItemViewModel(IDiagramViewModel root, SerializableItem serializableItem, string serializableType) : base(root, serializableItem, serializableType)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void Init(IDiagramViewModel root)
|
||||
{
|
||||
base.Init(root);
|
||||
@@ -34,5 +45,14 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
protected override void ExecuteEditCommand(object param)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 打标记使用
|
||||
/// </summary>
|
||||
public bool Custom
|
||||
{
|
||||
get;set;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user