系统优化

This commit is contained in:
akwkevin
2025-02-03 15:22:00 +08:00
parent ddf89e21e4
commit 141ba3b775
14 changed files with 871 additions and 66 deletions

View File

@@ -38,6 +38,8 @@ namespace AIStudio.Wpf.DiagramDesigner
var connector = ItemContainerGenerator.ContainerFromItem(item) as ContentPresenter;
if (connector != null)
{
vm.PropertyChanged -= Vm_PropertyChanged;
vm.PropertyChanged += Vm_PropertyChanged;
Canvas.SetLeft(connector, vm.DataItem.GetItemWidth() * vm.XRatio - vm.ConnectorWidth / 2);
Canvas.SetTop(connector, vm.DataItem.GetItemHeight() * vm.YRatio - vm.ConnectorHeight / 2);
}
@@ -65,6 +67,21 @@ namespace AIStudio.Wpf.DiagramDesigner
{
var vm = connector.DataContext as FullyCreatedConnectorInfo;
if (vm != null)
{
vm.PropertyChanged -= Vm_PropertyChanged;
vm.PropertyChanged += Vm_PropertyChanged;
Canvas.SetLeft(connector, vm.DataItem.GetItemWidth() * vm.XRatio - vm.ConnectorWidth / 2);
Canvas.SetTop(connector, vm.DataItem.GetItemHeight() * vm.YRatio - vm.ConnectorHeight / 2);
}
}
}
private void Vm_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
if (sender is FullyCreatedConnectorInfo vm)
{
var connector = ItemContainerGenerator.ContainerFromItem(vm) as ContentPresenter;
if (connector != null)
{
Canvas.SetLeft(connector, vm.DataItem.GetItemWidth() * vm.XRatio - vm.ConnectorWidth / 2);
Canvas.SetTop(connector, vm.DataItem.GetItemHeight() * vm.YRatio - vm.ConnectorHeight / 2);