添加几个裁剪参数

This commit is contained in:
艾竹
2024-01-01 20:37:06 +08:00
parent c2bce7c912
commit a611f1b11b
5 changed files with 473 additions and 34 deletions

View File

@@ -4,6 +4,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:dd="clr-namespace:AIStudio.Wpf.DiagramDesigner"
xmlns:converter="clr-namespace:AIStudio.Wpf.DiagramDesigner.Converters"
xmlns:c="clr-namespace:AIStudio.Wpf.DiagramDesigner.Controls"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
@@ -14,6 +15,9 @@
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/AIStudio.Wpf.DiagramDesigner;component/Themes/DiagramControl.xaml" />
<ResourceDictionary>
<converter:BorderClipConverter x:Key="BorderClipConverter"/>
</ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
@@ -32,6 +36,7 @@
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<dd:DesignerCanvas
x:Name="canvas"
Height="{Binding DiagramOption.LayoutOption.PageSize.Height}"
Width="{Binding DiagramOption.LayoutOption.PageSize.Width}"
ShowGrid="{Binding DiagramOption.LayoutOption.ShowGrid}"
@@ -39,10 +44,20 @@
GridMarginSize="{Binding DiagramOption.LayoutOption.GridMarginSize}"
GridColor="{Binding DiagramOption.LayoutOption.GridColor}"
Background="{Binding DiagramOption.LayoutOption.PageBackground,Converter={StaticResource ColorBrushConverter}}"
AllowDrop="{Binding DiagramOption.LayoutOption.AllowDrop}">
AllowDrop="{Binding DiagramOption.LayoutOption.AllowDrop}"
ClipToBounds="{Binding DiagramOption.LayoutOption.ClipToBounds}"
AutoGrowth="{Binding DiagramOption.LayoutOption.AutoGrowth}"
CornerRadius="{Binding DiagramOption.LayoutOption.CornerRadius}">
<dd:DesignerCanvas.LayoutTransform>
<ScaleTransform ScaleX="{Binding ZoomValue}" ScaleY="{Binding ZoomValue}" />
</dd:DesignerCanvas.LayoutTransform>
<dd:DesignerCanvas.Clip>
<MultiBinding Converter="{StaticResource BorderClipConverter}">
<Binding ElementName="canvas" Path="ActualWidth" />
<Binding ElementName="canvas" Path="ActualHeight" />
<Binding ElementName="canvas" Path="CornerRadius" />
</MultiBinding>
</dd:DesignerCanvas.Clip>
</dd:DesignerCanvas>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
@@ -67,6 +82,7 @@
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<dd:DesignerCanvas
x:Name="canvas"
Height="{Binding DiagramOption.LayoutOption.PageSize.Height}"
Width="{Binding DiagramOption.LayoutOption.PageSize.Width}"
ShowGrid="{Binding DiagramOption.LayoutOption.ShowGrid}"
@@ -74,10 +90,20 @@
GridMarginSize="{Binding DiagramOption.LayoutOption.GridMarginSize}"
GridColor="{Binding DiagramOption.LayoutOption.GridColor}"
Background="{Binding DiagramOption.LayoutOption.PageBackground,Converter={StaticResource ColorBrushConverter}}"
AllowDrop="{Binding DiagramOption.LayoutOption.AllowDrop}">
AllowDrop="{Binding DiagramOption.LayoutOption.AllowDrop}"
ClipToBounds="{Binding DiagramOption.LayoutOption.ClipToBounds}"
AutoGrowth="{Binding DiagramOption.LayoutOption.AutoGrowth}"
CornerRadius="{Binding DiagramOption.LayoutOption.CornerRadius}">
<dd:DesignerCanvas.LayoutTransform>
<ScaleTransform ScaleX="{Binding ZoomValue}" ScaleY="{Binding ZoomValue}" />
</dd:DesignerCanvas.LayoutTransform>
<dd:DesignerCanvas.Clip>
<MultiBinding Converter="{StaticResource BorderClipConverter}">
<Binding ElementName="canvas" Path="ActualWidth" />
<Binding ElementName="canvas" Path="ActualHeight" />
<Binding ElementName="canvas" Path="CornerRadius" />
</MultiBinding>
</dd:DesignerCanvas.Clip>
</dd:DesignerCanvas>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>