2024-10-15 21:56:09 +08:00
|
|
|
|
<Window x:Class="Serein.Workbench.MainWindow"
|
2024-08-05 10:11:58 +08:00
|
|
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
|
|
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
2024-10-27 00:54:10 +08:00
|
|
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
|
|
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
2024-10-15 21:56:09 +08:00
|
|
|
|
xmlns:local="clr-namespace:Serein.Workbench"
|
|
|
|
|
|
xmlns:tool="clr-namespace:Serein.Workbench.Tool.Converters"
|
|
|
|
|
|
xmlns:nodeView="clr-namespace:Serein.Workbench.Node.View"
|
|
|
|
|
|
xmlns:themes="clr-namespace:Serein.Workbench.Themes"
|
2024-10-27 00:54:10 +08:00
|
|
|
|
xmlns:converters="clr-namespace:Serein.Workbench.Tool.Converters"
|
|
|
|
|
|
mc:Ignorable="d"
|
|
|
|
|
|
d:DataContext="{d:DesignInstance local:MainWindowViewModel}"
|
2024-09-22 17:37:32 +08:00
|
|
|
|
Title="Dynamic Node Flow" Height="900" Width="1400"
|
2024-10-27 00:54:10 +08:00
|
|
|
|
AllowDrop="True"
|
|
|
|
|
|
Drop="Window_Drop"
|
|
|
|
|
|
DragOver="Window_DragOver"
|
2024-08-05 10:11:58 +08:00
|
|
|
|
Loaded="Window_Loaded"
|
2024-09-17 14:20:27 +08:00
|
|
|
|
ContentRendered="Window_ContentRendered"
|
2024-09-20 10:50:32 +08:00
|
|
|
|
PreviewKeyDown="Window_PreviewKeyDown"
|
2024-08-05 10:11:58 +08:00
|
|
|
|
Closing="Window_Closing">
|
|
|
|
|
|
|
2024-09-10 11:05:48 +08:00
|
|
|
|
<Window.Resources>
|
2024-10-27 00:54:10 +08:00
|
|
|
|
<converters:InvertableBooleanToVisibilityConverter x:Key="InvertedBoolConverter"/>
|
2024-10-14 17:29:28 +08:00
|
|
|
|
<tool:RightThumbPositionConverter x:Key="RightThumbPositionConverter" />
|
|
|
|
|
|
<tool:BottomThumbPositionConverter x:Key="BottomThumbPositionConverter" />
|
|
|
|
|
|
<tool:VerticalCenterThumbPositionConverter x:Key="VerticalCenterThumbPositionConverter" />
|
|
|
|
|
|
<tool:HorizontalCenterThumbPositionConverter x:Key="HorizontalCenterThumbPositionConverter" />
|
2024-09-10 11:05:48 +08:00
|
|
|
|
</Window.Resources>
|
|
|
|
|
|
|
2024-08-05 10:11:58 +08:00
|
|
|
|
<Window.InputBindings>
|
|
|
|
|
|
<KeyBinding Key="Escape" Command="{Binding CancelConnectionCommand}"/>
|
|
|
|
|
|
</Window.InputBindings>
|
|
|
|
|
|
<Grid>
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<Grid.RowDefinitions>
|
|
|
|
|
|
<RowDefinition Height="auto"/>
|
|
|
|
|
|
<RowDefinition Height="*"/>
|
|
|
|
|
|
</Grid.RowDefinitions>
|
|
|
|
|
|
<Grid.ColumnDefinitions>
|
2024-09-22 17:37:32 +08:00
|
|
|
|
<ColumnDefinition Width="300"/>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<ColumnDefinition Width="5"/>
|
2024-08-05 10:11:58 +08:00
|
|
|
|
<ColumnDefinition Width="3*"/>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<ColumnDefinition Width="5"/>
|
|
|
|
|
|
<ColumnDefinition Width="*"/>
|
2024-08-05 10:11:58 +08:00
|
|
|
|
</Grid.ColumnDefinitions>
|
|
|
|
|
|
|
2024-10-27 00:54:10 +08:00
|
|
|
|
<Menu DockPanel.Dock="Top" Grid.Row="0" Grid.ColumnSpan="5" Height="20">
|
2024-10-15 21:56:09 +08:00
|
|
|
|
<MenuItem Header="项目">
|
2024-10-15 10:55:41 +08:00
|
|
|
|
<!--菜单项为MenuItem,文字使用属性 Header-->
|
|
|
|
|
|
<MenuItem Header="保存项目" Click="ButtonSaveFile_Click" ></MenuItem>
|
2024-10-15 21:56:09 +08:00
|
|
|
|
<MenuItem Header="打开本地文件" Click="ButtonOpenLocalProject_Click"></MenuItem>
|
2024-10-15 10:55:41 +08:00
|
|
|
|
</MenuItem>
|
|
|
|
|
|
<MenuItem Header="调试">
|
|
|
|
|
|
<MenuItem Header="运行(从起始节点)" Click="ButtonDebugRun_Click"></MenuItem>
|
2024-10-20 21:59:42 +08:00
|
|
|
|
<MenuItem Header="运行(从选定节点)" Click="ButtonStartFlowInSelectNode_Click"></MenuItem>
|
2024-10-15 10:55:41 +08:00
|
|
|
|
<MenuItem Header="结束流程" Click="ButtonDebugFlipflopNode_Click"></MenuItem>
|
|
|
|
|
|
</MenuItem>
|
|
|
|
|
|
<MenuItem Header="视图">
|
|
|
|
|
|
<MenuItem Header="输出窗口" Click="ButtonOpenConsoleOutWindow_Click"></MenuItem>
|
|
|
|
|
|
<MenuItem Header="重置画布" Click="ButtonResetCanvas_Click"></MenuItem>
|
|
|
|
|
|
</MenuItem>
|
2024-10-15 21:56:09 +08:00
|
|
|
|
<MenuItem Header="远程">
|
|
|
|
|
|
<MenuItem Header="启动远程服务" Click="ButtonStartRemoteServer_Click"></MenuItem>
|
|
|
|
|
|
|
|
|
|
|
|
<MenuItem Header="连接远程环境" Click="ButtonConnectionRemoteEnv_Click"></MenuItem>
|
|
|
|
|
|
</MenuItem>
|
2024-10-15 10:55:41 +08:00
|
|
|
|
<!--<MenuItem Header="说明"></MenuItem>-->
|
|
|
|
|
|
</Menu>
|
|
|
|
|
|
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<DockPanel Grid.Row="1" Grid.Column="0" Background="#F5F5F5">
|
2024-08-05 10:11:58 +08:00
|
|
|
|
<Grid>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<Grid.ColumnDefinitions>
|
|
|
|
|
|
<ColumnDefinition Width="*"/>
|
|
|
|
|
|
</Grid.ColumnDefinitions>
|
2024-08-05 10:11:58 +08:00
|
|
|
|
<Grid.RowDefinitions>
|
2024-10-15 10:55:41 +08:00
|
|
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
|
|
|
|
<RowDefinition Height="*"></RowDefinition>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<!--<RowDefinition Height="3"></RowDefinition>-->
|
|
|
|
|
|
<!--<RowDefinition Height="3*"></RowDefinition>-->
|
2024-08-05 10:11:58 +08:00
|
|
|
|
</Grid.RowDefinitions>
|
|
|
|
|
|
|
2024-10-28 21:52:45 +08:00
|
|
|
|
<!--暂时隐藏基础面板 Visibility="Collapsed" -->
|
|
|
|
|
|
<ScrollViewer Grid.Row="0" HorizontalScrollBarVisibility="Auto">
|
2024-09-20 17:11:31 +08:00
|
|
|
|
<StackPanel Orientation="Horizontal">
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<nodeView:ExpOpNodeControl x:Name="ExpOpNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>
|
|
|
|
|
|
<nodeView:ConditionNodeControl x:Name="ConditionNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>
|
2024-10-29 10:46:39 +08:00
|
|
|
|
<!--<nodeView:ConditionRegionControl x:Name="ConditionRegionControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>-->
|
2024-09-20 17:11:31 +08:00
|
|
|
|
</StackPanel>
|
2024-08-05 10:11:58 +08:00
|
|
|
|
</ScrollViewer>
|
2024-10-28 21:52:45 +08:00
|
|
|
|
|
|
|
|
|
|
<ScrollViewer VerticalAlignment="Top" Grid.Row="1" VerticalScrollBarVisibility="Auto" Grid.RowSpan="2">
|
2024-08-05 10:11:58 +08:00
|
|
|
|
<StackPanel x:Name="DllStackPanel" Margin="5"/>
|
|
|
|
|
|
</ScrollViewer>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<!--<GridSplitter Grid.Row="3" Height="5" HorizontalAlignment="Stretch" VerticalAlignment="Center" ResizeBehavior="PreviousAndNext" Background="Gray"/>-->
|
|
|
|
|
|
|
2024-08-05 10:11:58 +08:00
|
|
|
|
</Grid>
|
|
|
|
|
|
</DockPanel>
|
|
|
|
|
|
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<GridSplitter Grid.Row="1" Grid.Column="1" Width="5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ResizeBehavior="PreviousAndNext" Background="Gray" />
|
2024-08-05 10:11:58 +08:00
|
|
|
|
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<Grid Grid.Row="1" Grid.Column="2" x:Name="FlowChartStackGrid">
|
2024-10-27 00:54:10 +08:00
|
|
|
|
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<StackPanel x:Name="FlowChartStackPanel"
|
2024-10-23 19:22:27 +08:00
|
|
|
|
|
2024-09-10 11:49:56 +08:00
|
|
|
|
ClipToBounds="True">
|
2024-09-10 11:05:48 +08:00
|
|
|
|
<Canvas
|
|
|
|
|
|
x:Name="FlowChartCanvas"
|
2024-09-24 22:39:43 +08:00
|
|
|
|
Background="#E1FBEA"
|
2024-09-10 11:05:48 +08:00
|
|
|
|
AllowDrop="True"
|
2024-10-23 19:22:27 +08:00
|
|
|
|
Width="2000"
|
|
|
|
|
|
Height="2000"
|
2024-09-12 20:32:54 +08:00
|
|
|
|
MouseLeftButtonDown ="FlowChartCanvas_MouseLeftButtonDown"
|
|
|
|
|
|
MouseLeftButtonUp="FlowChartCanvas_MouseLeftButtonUp"
|
2024-09-10 11:05:48 +08:00
|
|
|
|
MouseDown="FlowChartCanvas_MouseDown"
|
|
|
|
|
|
MouseUp="FlowChartCanvas_MouseUp"
|
2024-10-15 21:56:09 +08:00
|
|
|
|
MouseMove="FlowChartCanvas_MouseMove"
|
2024-09-10 11:05:48 +08:00
|
|
|
|
MouseWheel="FlowChartCanvas_MouseWheel"
|
|
|
|
|
|
Drop="FlowChartCanvas_Drop"
|
|
|
|
|
|
DragOver="FlowChartCanvas_DragOver">
|
|
|
|
|
|
|
2024-09-12 20:32:54 +08:00
|
|
|
|
<Rectangle x:Name="SelectionRectangle"
|
|
|
|
|
|
Stroke="Blue"
|
|
|
|
|
|
StrokeThickness="2"
|
|
|
|
|
|
Fill="LightBlue"
|
2024-09-20 10:50:32 +08:00
|
|
|
|
Opacity="0.2"
|
2024-09-12 20:32:54 +08:00
|
|
|
|
Panel.ZIndex="999999"
|
2024-09-20 17:11:31 +08:00
|
|
|
|
Visibility="Collapsed"/>
|
2024-09-12 20:32:54 +08:00
|
|
|
|
|
2024-09-10 11:05:48 +08:00
|
|
|
|
<!-- Top-Left Thumb -->
|
|
|
|
|
|
<!--<Thumb x:Name="TopLeftThumb"
|
|
|
|
|
|
Width="10" Height="10"
|
|
|
|
|
|
DragDelta="Thumb_DragDelta_TopLeft"
|
|
|
|
|
|
Cursor="SizeNWSE"
|
|
|
|
|
|
Canvas.Left="0" Canvas.Top="0"/>-->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Top-Right Thumb -->
|
2024-09-10 11:49:56 +08:00
|
|
|
|
<!--<Thumb x:Name="TopRightThumb"
|
2024-09-10 11:05:48 +08:00
|
|
|
|
Width="10" Height="10"
|
|
|
|
|
|
DragDelta="Thumb_DragDelta_TopRight"
|
|
|
|
|
|
Cursor="SizeNESW"
|
|
|
|
|
|
Canvas.Left="{Binding ActualWidth, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource RightThumbPositionConverter}}"
|
2024-09-10 11:49:56 +08:00
|
|
|
|
Canvas.Top="0"/>-->
|
2024-09-10 11:05:48 +08:00
|
|
|
|
|
|
|
|
|
|
<!-- Bottom-Left Thumb -->
|
|
|
|
|
|
<!--<Thumb x:Name="BottomLeftThumb"
|
|
|
|
|
|
Width="10" Height="10"
|
|
|
|
|
|
DragDelta="Thumb_DragDelta_BottomLeft"
|
|
|
|
|
|
Cursor="SizeNESW"
|
|
|
|
|
|
Canvas.Left="0"
|
|
|
|
|
|
Canvas.Top="{Binding ActualHeight, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource BottomThumbPositionConverter}}"/>-->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Left Thumb -->
|
|
|
|
|
|
<!--<Thumb x:Name="LeftThumb"
|
|
|
|
|
|
Width="10" Height="10"
|
|
|
|
|
|
DragDelta="Thumb_DragDelta_Left"
|
|
|
|
|
|
Cursor="SizeWE"
|
|
|
|
|
|
Canvas.Left="0"
|
|
|
|
|
|
Canvas.Top="{Binding ActualHeight, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource VerticalCenterThumbPositionConverter}}"/>-->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Right Thumb -->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Top Thumb -->
|
|
|
|
|
|
<!--<Thumb x:Name="TopThumb"
|
|
|
|
|
|
Width="10" Height="10"
|
|
|
|
|
|
DragDelta="Thumb_DragDelta_Top"
|
|
|
|
|
|
Cursor="SizeNS"
|
|
|
|
|
|
Canvas.Left="{Binding ActualWidth, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource HorizontalCenterThumbPositionConverter}}"
|
|
|
|
|
|
Canvas.Top="0"/>-->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Bottom Thumb -->
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<!-- Bottom-Right Thumb -->
|
|
|
|
|
|
<Thumb x:Name="BottomRightThumb"
|
|
|
|
|
|
Width="15" Height="15"
|
|
|
|
|
|
DragDelta="Thumb_DragDelta_BottomRight"
|
|
|
|
|
|
Cursor="SizeNWSE"
|
|
|
|
|
|
Canvas.Left="{Binding ActualWidth, Converter={StaticResource RightThumbPositionConverter}, ElementName=FlowChartCanvas, Mode=OneWay}"
|
|
|
|
|
|
Canvas.Top="{Binding ActualHeight, Converter={StaticResource BottomThumbPositionConverter}, ElementName=FlowChartCanvas, Mode=OneWay}"/>
|
|
|
|
|
|
|
|
|
|
|
|
<!--Canvas.Left="{Binding ActualWidth, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource RightThumbPositionConverter}}"
|
|
|
|
|
|
Canvas.Top="{Binding ActualHeight, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource VerticalCenterThumbPositionConverter}}"-->
|
|
|
|
|
|
<Thumb x:Name="RightThumb" Width="5" Cursor="SizeWE" Canvas.Top="0" Canvas.Right="0" DragDelta="Thumb_DragDelta_Right">
|
|
|
|
|
|
<Thumb.Template>
|
|
|
|
|
|
<ControlTemplate>
|
|
|
|
|
|
<Border Background="#B1B9F8" Width="5" Height="{Binding ActualHeight, RelativeSource={RelativeSource AncestorType={x:Type Canvas}}}" />
|
|
|
|
|
|
</ControlTemplate>
|
|
|
|
|
|
</Thumb.Template>
|
|
|
|
|
|
</Thumb>
|
|
|
|
|
|
|
2024-09-10 11:49:56 +08:00
|
|
|
|
<!--Canvas.Left="{Binding ActualWidth, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource HorizontalCenterThumbPositionConverter}}"
|
|
|
|
|
|
Canvas.Top="{Binding ActualHeight, ElementName=FlowChartCanvas, Mode=OneWay, Converter={StaticResource BottomThumbPositionConverter}}"-->
|
|
|
|
|
|
<Thumb x:Name="BottomThumb" Height="5" Cursor="SizeNS" Canvas.Bottom="0" Canvas.Left="0" DragDelta="Thumb_DragDelta_Bottom">
|
|
|
|
|
|
<Thumb.Template>
|
|
|
|
|
|
<ControlTemplate>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<Border Background="#B1B9F8" Height="5" Width="{Binding ActualWidth, RelativeSource={RelativeSource AncestorType={x:Type Canvas}}}" />
|
2024-09-10 11:49:56 +08:00
|
|
|
|
</ControlTemplate>
|
|
|
|
|
|
</Thumb.Template>
|
|
|
|
|
|
</Thumb>
|
2024-09-10 11:05:48 +08:00
|
|
|
|
</Canvas>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</StackPanel>
|
2024-10-27 00:54:10 +08:00
|
|
|
|
<StackPanel>
|
|
|
|
|
|
<StackPanel x:Name="CreateNodeInvoke"
|
2024-10-28 15:21:08 +08:00
|
|
|
|
Margin="14" Width="auto" HorizontalAlignment="Left" Background="White" Opacity="0.8"
|
2024-10-27 00:54:10 +08:00
|
|
|
|
Visibility="{Binding IsConnectionInvokeNode,
|
|
|
|
|
|
Converter={StaticResource InvertedBoolConverter},ConverterParameter=Normal}" >
|
2024-10-28 15:21:08 +08:00
|
|
|
|
<TextBlock Margin="8,2,8,0" Foreground="#FF2727" FontSize="14" Text="正在设置方法调用关系 ( 按 Ecs 退出连线状态 )"/>
|
2024-10-28 10:25:57 +08:00
|
|
|
|
<TextBlock Margin="8,0,8,0" Foreground="#4A82E4" FontSize="14" Text=" 按 1 切换:上游分支(运行本节点前,优先执行目标节点)"/>
|
|
|
|
|
|
<TextBlock Margin="8,0,8,0" Foreground="#04FC10" FontSize="14" Text=" 按 2 切换:Succeed 分支(本节点运行完成,将会运行目标节点)"/>
|
|
|
|
|
|
<TextBlock Margin="8,0,8,0" Foreground="#F18905" FontSize="14" Text=" 按 3 切换:Fail 分支(条件节点的false分支)"/>
|
|
|
|
|
|
<TextBlock Margin="8,0,8,2" Foreground="#FE1343" FontSize="14" Text=" 按 4 切换:异常分支(本节点运行发生异常时执行目标节点)"/>
|
2024-10-27 00:54:10 +08:00
|
|
|
|
</StackPanel>
|
2024-10-28 15:21:08 +08:00
|
|
|
|
<StackPanel Margin="14" Width="auto" HorizontalAlignment="Left" Background="White" Opacity="0.8"
|
2024-10-27 00:54:10 +08:00
|
|
|
|
Visibility="{Binding IsConnectionArgSourceNode,
|
|
|
|
|
|
Converter={StaticResource InvertedBoolConverter},ConverterParameter=Normal}" >
|
2024-10-28 15:21:08 +08:00
|
|
|
|
<TextBlock Margin="8,2,8,0" Foreground="#FF2727" FontSize="14" Text="正在设置参数传递关系 ( 按 Ecs 退出连线状态 )"/>
|
|
|
|
|
|
<TextBlock Margin="8,0,8,0" Foreground="#56CEF6" FontSize="14" Text=" 按 1 切换:使用返回值作为当前上下文的入参参数(当前上下文下如果未曾运行过该节点,将会返回null)"/>
|
|
|
|
|
|
<TextBlock Margin="8,0,8,2" Foreground="#B06BBB" FontSize="14" Text=" 按 2 切换:立刻调用节点,取其返回值作为当前上下文的入参参数"/>
|
2024-10-27 00:54:10 +08:00
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</StackPanel>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
</Grid>
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<GridSplitter Grid.Row="1" Grid.Column="3" Width="5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ResizeBehavior="PreviousAndNext" Background="Gray" />
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<!--IOC容器属性-->
|
2024-09-27 23:47:25 +08:00
|
|
|
|
<Grid Grid.Row="1" Grid.Column="4" >
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<Grid.RowDefinitions>
|
2024-09-26 21:00:17 +08:00
|
|
|
|
<RowDefinition Height="auto"/>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
<RowDefinition Height="*"/>
|
|
|
|
|
|
<RowDefinition Height="*"/>
|
|
|
|
|
|
</Grid.RowDefinitions>
|
|
|
|
|
|
<Grid Grid.Row="0" >
|
|
|
|
|
|
<!--<themes:LazyTreeView x:Name="lazyTreeView" />-->
|
2024-09-26 21:00:17 +08:00
|
|
|
|
<themes:NodeTreeViewControl x:Name="NodeTreeViewer"></themes:NodeTreeViewControl>
|
2024-09-24 22:39:43 +08:00
|
|
|
|
</Grid>
|
|
|
|
|
|
<Grid Grid.Row="1" >
|
|
|
|
|
|
<themes:IOCObjectViewControl x:Name="IOCObjectViewer">
|
|
|
|
|
|
<!--<x:Arguments>
|
|
|
|
|
|
<x:String>Apple</x:String>
|
|
|
|
|
|
</x:Arguments>-->
|
|
|
|
|
|
</themes:IOCObjectViewControl>
|
|
|
|
|
|
</Grid>
|
|
|
|
|
|
<Grid Grid.Row="3" Margin="0,3,0,0" Grid.RowSpan="2">
|
|
|
|
|
|
<themes:ObjectViewerControl x:Name="ViewObjectViewer"></themes:ObjectViewerControl>
|
|
|
|
|
|
</Grid>
|
2024-08-05 10:11:58 +08:00
|
|
|
|
</Grid>
|
2024-09-20 17:11:31 +08:00
|
|
|
|
|
2024-08-05 10:11:58 +08:00
|
|
|
|
</Grid>
|
|
|
|
|
|
</Window>
|