<hb:PluginControl x:Class="Plugin.SeqEditor.SeqEditor"
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:local="clr-namespace:Plugin.SeqEditor"
|
mc:Ignorable="d"
|
xmlns:hcu="clr-namespace:HMI.Core.Util;assembly=HMI.Core"
|
xmlns:hb="clr-namespace:HMI.Base;assembly=HMI.Base"
|
xmlns:uic="clr-namespace:HMI.UI.Converter;assembly=HMI.UI"
|
xmlns:ui="clr-namespace:HMI.UI;assembly=HMI.UI"
|
xmlns:pw="https://opensource.panuon.com/wpf"
|
xmlns:pu="https://opensource.panuon.com/wpf-ui"
|
xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI"
|
xmlns:util="clr-namespace:Plugin.SeqEditor.Util"
|
xmlns:dd="urn:gong-wpf-dragdrop"
|
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
|
d:DesignHeight="450" d:DesignWidth="800">
|
<i:Interaction.Triggers>
|
<i:EventTrigger EventName="Loaded">
|
<i:InvokeCommandAction Command="{Binding LoadedCommand}" />
|
</i:EventTrigger>
|
</i:Interaction.Triggers>
|
<UserControl.Resources>
|
<ResourceDictionary>
|
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary Source="/HMI.UI;component/Style/PanuonDataGrid.xaml"/>
|
<ResourceDictionary Source="/HMI.UI;component/Controls/MultiCombox.xaml"/>
|
<ResourceDictionary Source="/HMI.UI;component/Controls/TreeGrid/Themes/TreeListView.xaml"/>
|
<ResourceDictionary Source="/HMI.UI;component/Controls/TreeGrid/Themes/TreeItemContentControl.xaml"/>
|
<ResourceDictionary Source="/HMI.UI;component/Controls/TreeGrid/Themes/TreeGrid.xaml"/>
|
</ResourceDictionary.MergedDictionaries>
|
|
<uic:IndentConverter x:Key="IndentConverter"/>
|
|
<Style TargetType="pu:FormGroup">
|
<Setter Property="Padding" Value="0,10"/>
|
<Setter Property="HeaderFontSize" Value="14"/>
|
<Setter Property="HeaderFontWeight" Value="Bold"/>
|
</Style>
|
|
<Style x:Key="TreeTogg" TargetType="ToggleButton">
|
<Setter Property="Template">
|
<Setter.Value>
|
<ControlTemplate>
|
<Border Width="0"/>
|
</ControlTemplate>
|
</Setter.Value>
|
</Setter>
|
</Style>
|
|
<!-- 树Grid组件 -->
|
<ui:TreeItemDataConverter x:Key="TreeItemDataConverter"/>
|
|
<CollectionViewSource x:Key="TreeGridFilter"
|
Source="{Binding AllSteps,Converter={StaticResource TreeItemDataConverter},ConverterParameter=Children}">
|
<CollectionViewSource.GroupDescriptions>
|
<PropertyGroupDescription PropertyName="Data.Group" />
|
</CollectionViewSource.GroupDescriptions>
|
</CollectionViewSource>
|
|
<hcu:BindingProxy x:Key="BindingProxy" Data="{Binding}"/>
|
|
<ContextMenu x:Key="stepContextMenu">
|
<ContextMenu.Resources>
|
<Style TargetType="MenuItem">
|
<Setter Property="DataContext" Value="{Binding Data,Source={StaticResource BindingProxy}}"/>
|
</Style>
|
</ContextMenu.Resources>
|
<MenuItem Header="插入Step">
|
<MenuItem Header="Tests">
|
<!--<MenuItem Header="Pass/Fail" Command="{Binding AddStepCommand}"
|
CommandParameter="Tests.PassFail"/>
|
<MenuItem Header="MultiNumber" Command="{Binding AddStepCommand}"
|
CommandParameter="Tests.NI_MultipleNumericLimitTest"/>-->
|
<MenuItem Header="Number" Command="{Binding AddStepCommand}"
|
CommandParameter="Tests.NumericLimitTest"/>
|
<MenuItem Header="String" Command="{Binding AddStepCommand}"
|
CommandParameter="Tests.StringValueTest"/>
|
</MenuItem>
|
|
<!--<MenuItem Header="Actions">
|
<MenuItem Header="LabVIEW" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.LabVIEW"/>
|
<MenuItem Header="LabWindows/CVI" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.LabWindows/CVI"/>
|
<MenuItem Header="C/C++ DLL" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.C/C++ DLL"/>
|
<MenuItem Header=".NET" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions..NET"/>
|
|
<MenuItem Header="ActiveX/COM" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.ActiveX/COM"/>
|
|
<MenuItem Header="None" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.None"/>
|
|
<MenuItem Header="LabVIEW NXG" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.LabVIEW NXG"/>
|
<MenuItem Header="Python" Command="{Binding AddStepCommand}"
|
CommandParameter="Actions.Python"/>
|
</MenuItem>-->
|
</MenuItem>
|
</ContextMenu>
|
|
<Style x:Key="treeCell" TargetType="DataGridCell">
|
<Setter Property="Background" Value="Transparent"/>
|
<Setter Property="Padding" Value="5"/>
|
<Setter Property="Margin" Value="0"/>
|
<Setter Property="BorderThickness" Value="0"/>
|
<Setter Property="VerticalAlignment" Value="Stretch"/>
|
<Setter Property="VerticalContentAlignment" Value="{Binding VerticalContentAlignment,
|
RelativeSource={RelativeSource Mode=FindAncestor,AncestorLevel=1,AncestorType=ui:TreeDataGrid}}"/>
|
<Setter Property="HorizontalContentAlignment"
|
Value="{Binding HorizontalContentAlignment,
|
RelativeSource={RelativeSource Mode=FindAncestor,AncestorLevel=1,AncestorType=ui:TreeDataGrid}}"/>
|
</Style>
|
|
<Style x:Key="stepRowStyle" TargetType="ui:TreeDataGridRow">
|
<Setter Property="ContextMenu" Value="{StaticResource stepContextMenu}"/>
|
<Setter Property="DetailsVisibility" Value="Collapsed"/>
|
|
<Style.Triggers>
|
<Trigger Property="IsSelected" Value="True">
|
<Setter Property="Background" Value="{StaticResource PrimaryColor}"/>
|
</Trigger>
|
</Style.Triggers>
|
</Style>
|
|
<Style x:Key="sb" TargetType="ui:TreeDataGrid" BasedOn="{StaticResource DefaultDataGrid}">
|
<Setter Property="pu:DataGridHelper.RowHeaderSeparatorVisibility" Value="Visible"/>
|
<Setter Property="pu:DataGridHelper.RowHeaderSeparatorBrush" Value="#FFF"/>
|
<Setter Property="AreRowDetailsFrozen" Value="False"/>
|
<Setter Property="HeadersVisibility" Value="Column"/>
|
<Setter Property="DataGridCell.VerticalContentAlignment" Value="Center"/>
|
<Setter Property="DataGridCell.HorizontalContentAlignment" Value="Left"/>
|
</Style>
|
|
<Style x:Key="gvh" TargetType="GridViewColumnHeader">
|
<Setter Property="Background" Value="{DynamicResource VerBar}"/>
|
</Style>
|
|
<DataTemplate x:Key="gvht">
|
<Border Padding="6">
|
<TextBlock Foreground="#FFF" Text="{Binding }"/>
|
</Border>
|
</DataTemplate>
|
</ResourceDictionary>
|
</UserControl.Resources>
|
<Border Style="{StaticResource CardBoarder}" Padding="0">
|
<Grid dp:GridHelper.Space="10" Cursor="">
|
<Grid.RowDefinitions>
|
<RowDefinition Height="Auto"/>
|
<RowDefinition Height="Auto"/>
|
<RowDefinition/>
|
</Grid.RowDefinitions>
|
<Grid.ColumnDefinitions>
|
<ColumnDefinition Width="0"/>
|
<ColumnDefinition Width="8*"/>
|
<ColumnDefinition Width="2*"/>
|
</Grid.ColumnDefinitions>
|
|
<DockPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Margin="0,0,0,10">
|
<StackPanel DockPanel.Dock="Right" Orientation="Horizontal"
|
dp:StackPanelHelper.ChildSpace="10">
|
<Button Style="{StaticResource AddBtn}" Content="{DynamicResource se.open}" Command="{Binding OpenSeqFileCommand}"/>
|
<Button Style="{StaticResource SaveBtn}" Content="{DynamicResource se.save}" Command="{Binding SaveSeqFileCommand}"/>
|
<Button Style="{StaticResource SaveBtn}" pu:ButtonHelper.Icon=""
|
Content="{DynamicResource se.saveTo}"
|
Command="{Binding SaveToFileCommand}" Cursor="Hand"/>
|
<Button Style="{StaticResource DelBtn}" Content="{DynamicResource se.close}"
|
pu:ButtonHelper.Icon=""
|
Command="{Binding CloseSeqFileCommand}"/>
|
</StackPanel>
|
|
<TextBlock DockPanel.Dock="Left" FontSize="{StaticResource TitleFontSize}"
|
VerticalAlignment="Center" HorizontalAlignment="Left" Text="{DynamicResource se.title}"/>
|
|
<TextBlock DockPanel.Dock="Left" FontSize="{StaticResource ContentFontSize2}"
|
Margin="20,0,0,0"
|
VerticalAlignment="Bottom" LineHeight="{StaticResource TitleFontSize}" HorizontalAlignment="Left">
|
<Run Text="{Binding CurrentFileName}"/>
|
<Run DataContext="{Binding CurrentSeqUI}">
|
<Run.Style>
|
<Style TargetType="Run">
|
<Style.Triggers>
|
<DataTrigger Binding="{Binding IsChanged}" Value="True">
|
<Setter Property="Text" Value="*"/>
|
</DataTrigger>
|
</Style.Triggers>
|
</Style>
|
</Run.Style>
|
</Run>
|
</TextBlock>
|
</DockPanel>
|
|
<!--<pu:FormGroup Header="{DynamicResource se.seq}" Orientation="Vertical" Grid.Row="1" Grid.Column="0">
|
<DataGrid ItemsSource="{Binding Sequences}" SelectedItem="{Binding CurrentSeqUI}">
|
<DataGrid.Columns>
|
<DataGridTextColumn Width="*" Binding="{Binding Name}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.name}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
</DataGrid.Columns>
|
</DataGrid>
|
</pu:FormGroup>-->
|
<pu:FormGroup Grid.Row="1" Grid.Column="1" Header="步骤类型" Style="{StaticResource InputFormGroupStyle}">
|
<StackPanel Orientation="Horizontal">
|
<ui:MultiComboBox SelectedValues="{Binding TargetType}"
|
pu:ComboBoxHelper.ClearButtonVisibility="Collapsed"
|
Width="450" Margin="0,0,10,0" x:Name="CbFilter" IsEditable="True" IsReadOnly="True" >
|
|
</ui:MultiComboBox>
|
<Button Style="{StaticResource RfhBtn}" Command="{Binding RefreshCommand}"/>
|
</StackPanel>
|
</pu:FormGroup>
|
|
|
<pu:FormGroup Header="{Binding CurrentSeqTitle}" Orientation="Vertical" Grid.Row="2" Grid.Column="1">
|
<!--<DataGrid ItemsSource="{Binding Source={StaticResource cvs}}"
|
RowStyle="{StaticResource StepRow}"
|
SelectedItem="{Binding CurrentStepUI}">
|
<DataGrid.GroupStyle>
|
<GroupStyle>
|
<GroupStyle.Panel>
|
<ItemsPanelTemplate>
|
<DataGridRowsPresenter/>
|
</ItemsPanelTemplate>
|
</GroupStyle.Panel>
|
<GroupStyle.ContainerStyle>
|
<Style TargetType="{x:Type GroupItem}" BasedOn="{StaticResource DataGridGroupStyle}"/>
|
</GroupStyle.ContainerStyle>
|
</GroupStyle>
|
</DataGrid.GroupStyle>
|
|
<DataGrid.Columns>
|
<DataGridTextColumn Width="2*" Binding="{Binding Name}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.name}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
|
<DataGridTextColumn Width="1*" Binding="{Binding Type}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.name}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
|
<DataGridTextColumn Width="6*" Binding="{Binding Description}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.description}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
|
<DataGridTemplateColumn Width="1*">
|
<DataGridTemplateColumn.Header>
|
<TextBlock Text="{DynamicResource se.runMode}"/>
|
</DataGridTemplateColumn.Header>
|
<DataGridTemplateColumn.CellTemplate>
|
<DataTemplate>
|
<Grid x:Name="border" Margin="0">
|
<TextBlock x:Name="text" Margin="-1" Padding="0" VerticalAlignment="Center"/>
|
</Grid>
|
<DataTemplate.Triggers>
|
<DataTrigger Binding="{Binding RunMode}" Value="Normal">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.normal}"/>
|
</DataTrigger>
|
<DataTrigger Binding="{Binding RunMode}" Value="Skip">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.skip}"/>
|
</DataTrigger>
|
<DataTrigger Binding="{Binding RunMode}" Value="Pass">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.pass}"/>
|
</DataTrigger>
|
<DataTrigger Binding="{Binding RunMode}" Value="Fail">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.fail}"/>
|
</DataTrigger>
|
</DataTemplate.Triggers>
|
</DataTemplate>
|
</DataGridTemplateColumn.CellTemplate>
|
</DataGridTemplateColumn>
|
</DataGrid.Columns>
|
ItemsSource="{Binding AllSteps,Converter={StaticResource treeC}}"
|
PreviewMouseWheel="treeDataGrid_PreviewMouseWheel"
|
</DataGrid>-->
|
|
<!--<ui:TreeDataGrid Grid.Row="1" x:Name="treeDataGrid"
|
dd:DragDrop.IsDragSource="True"
|
dd:DragDrop.IsDropTarget="True"
|
dd:DragDrop.ShowAlwaysDropTargetAdorner="True"
|
dd:DragDrop.UseDefaultDragAdorner="True"
|
dd:DragDrop.DropHandler="{Binding StepDropHandler}"
|
SelectionUnit="FullRow"
|
AutoGenerateColumns="False"
|
CanUserAddRows="False"
|
Style="{StaticResource DefaultDataGrid}"
|
ItemsSource="{Binding TreeCollection,IsAsync=True}"
|
SelectedItem="{Binding TreeItemData}">
|
<DataGrid.GroupStyle>
|
<GroupStyle>
|
<GroupStyle.Panel>
|
<ItemsPanelTemplate>
|
<DataGridRowsPresenter/>
|
</ItemsPanelTemplate>
|
</GroupStyle.Panel>
|
<GroupStyle.ContainerStyle>
|
<Style TargetType="{x:Type GroupItem}">
|
<Setter Property="Template">
|
<Setter.Value>
|
<ControlTemplate TargetType="{x:Type GroupItem}">
|
<Expander BorderThickness="0" Background="DarkCyan"
|
Header="{Binding Name}" IsExpanded="True">
|
<ItemsPresenter />
|
</Expander>
|
</ControlTemplate>
|
</Setter.Value>
|
</Setter>
|
</Style>
|
</GroupStyle.ContainerStyle>
|
</GroupStyle>
|
</DataGrid.GroupStyle>
|
|
<DataGrid.Columns>
|
<DataGridTemplateColumn IsReadOnly="True" Width="Auto">
|
<DataGridTemplateColumn.CellTemplate>
|
<DataTemplate>
|
<ui:TreeItemContentControl IconLineStroke="Black" TreeData="{Binding }"/>
|
</DataTemplate>
|
</DataGridTemplateColumn.CellTemplate>
|
</DataGridTemplateColumn>
|
|
<DataGridTextColumn Width="1*" Binding="{Binding Data.Name}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.name}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
|
<DataGridTextColumn Width="1*" Binding="{Binding Data.Type}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.type}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
|
<DataGridTextColumn Width="6*" Binding="{Binding Data.Description}">
|
<DataGridTextColumn.Header>
|
<TextBlock Text="{DynamicResource se.description}"/>
|
</DataGridTextColumn.Header>
|
</DataGridTextColumn>
|
|
<DataGridTemplateColumn Width="1*">
|
<DataGridTemplateColumn.Header>
|
<TextBlock Text="{DynamicResource se.runMode}"/>
|
</DataGridTemplateColumn.Header>
|
<DataGridTemplateColumn.CellTemplate>
|
<DataTemplate>
|
<Grid x:Name="border" Margin="0">
|
<TextBlock x:Name="text" Margin="-1" Padding="0" VerticalAlignment="Center"/>
|
</Grid>
|
<DataTemplate.Triggers>
|
<DataTrigger Binding="{Binding Data.RunMode}" Value="Normal">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.normal}"/>
|
</DataTrigger>
|
<DataTrigger Binding="{Binding Data.RunMode}" Value="Skip">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.skip}"/>
|
</DataTrigger>
|
<DataTrigger Binding="{Binding Data.RunMode}" Value="Pass">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.pass}"/>
|
</DataTrigger>
|
<DataTrigger Binding="{Binding Data.RunMode}" Value="Fail">
|
<Setter TargetName="text" Property="Text" Value="{DynamicResource se.fail}"/>
|
</DataTrigger>
|
</DataTemplate.Triggers>
|
</DataTemplate>
|
</DataGridTemplateColumn.CellTemplate>
|
</DataGridTemplateColumn>
|
</DataGrid.Columns>
|
</ui:TreeDataGrid>-->
|
|
|
<ui:TreeListView Grid.Row="1" Grid.Column="1" ItemsSource="{Binding AllSteps}"
|
dd:DragDrop.IsDragSource="True"
|
dd:DragDrop.IsDropTarget="True"
|
dd:DragDrop.DropTargetAdornerBrush="Red"
|
dd:DragDrop.DropHandler="{Binding StepDropHandler}"
|
SizeChanged="TreeListView_SizeChanged">
|
<i:Interaction.Triggers>
|
<i:EventTrigger EventName="SelectedItemChanged">
|
<i:InvokeCommandAction Command="{Binding SbCommand}" PassEventArgsToCommand="True"/>
|
</i:EventTrigger>
|
<i:EventTrigger EventName="PreviewMouseRightButtonDown">
|
<i:InvokeCommandAction Command="{Binding Sb2Command}" PassEventArgsToCommand="True"/>
|
</i:EventTrigger>
|
</i:Interaction.Triggers>
|
<ui:TreeListView.Resources>
|
<Style x:Key="CellBorder" TargetType="Border">
|
<Setter Property="Padding" Value="5"/>
|
<Setter Property="BorderBrush" Value="{DynamicResource CommonBoarder}"/>
|
<Setter Property="BorderThickness" Value="1,0,0,1"/>
|
<Setter Property="Margin" Value="-6,0"/>
|
</Style>
|
</ui:TreeListView.Resources>
|
|
<ui:TreeListView.Style>
|
<Style TargetType="ui:TreeListView" BasedOn="{StaticResource DefaultTreeView}">
|
<Setter Property="pu:TreeViewHelper.ToggleArrowToggleButtonStyle" Value="{StaticResource TreeTogg}"/>
|
<Setter Property="pu:TreeViewHelper.ItemsPadding" Value="0"/>
|
<Setter Property="Background" Value="#FFF"/>
|
<Setter Property="ColumnHeaderContainerStyle" Value="{StaticResource gvh}"/>
|
<Setter Property="Template">
|
<Setter.Value>
|
<ControlTemplate TargetType="ui:TreeListView">
|
<Border BorderBrush="{TemplateBinding BorderBrush}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
Background="{TemplateBinding Background}">
|
<Grid>
|
<Grid.RowDefinitions>
|
<RowDefinition Height="Auto"/>
|
<RowDefinition/>
|
</Grid.RowDefinitions>
|
<GridViewHeaderRowPresenter
|
Grid.Row="0" Columns="{TemplateBinding Columns}">
|
<GridViewHeaderRowPresenter.ColumnHeaderContainerStyle>
|
<Style TargetType="GridViewColumnHeader">
|
<Setter Property="Background" Value="{DynamicResource VerBar}"/>
|
</Style>
|
</GridViewHeaderRowPresenter.ColumnHeaderContainerStyle>
|
</GridViewHeaderRowPresenter>
|
<ScrollViewer Grid.Row="1" Padding="{TemplateBinding Padding}" VerticalScrollBarVisibility="Auto">
|
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
|
</ScrollViewer>
|
</Grid>
|
</Border>
|
</ControlTemplate>
|
</Setter.Value>
|
</Setter>
|
</Style>
|
</ui:TreeListView.Style>
|
|
<ui:TreeListView.Columns>
|
<GridViewColumn Header="名称" HeaderContainerStyle="{StaticResource gvh}"
|
HeaderTemplate="{StaticResource gvht}">
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource CellBorder}">
|
<StackPanel Orientation="Horizontal">
|
<ToggleButton x:Name="Expander"
|
Style="{StaticResource ExpandCollapseToggleStyle}"
|
Margin="{Binding level,Converter={StaticResource IndentConverter},RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ui:TreeListViewItem,AncestorLevel=1}}"
|
Grid.Column="0"
|
IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ui:TreeListViewItem,AncestorLevel=1}}"
|
ClickMode="Press"/>
|
<TextBlock Margin="5,0,0,0" Padding="6,0" Text="{Binding Name}"/>
|
</StackPanel>
|
</Border>
|
|
<DataTemplate.Triggers>
|
<DataTrigger Binding="{Binding HasItems,
|
RelativeSource={RelativeSource Mode=FindAncestor,
|
AncestorType=ui:TreeListViewItem,AncestorLevel=1}}"
|
Value="False">
|
<Setter Property="Visibility" Value="Hidden" TargetName="Expander"/>
|
</DataTrigger>
|
</DataTemplate.Triggers>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
|
<GridViewColumn Header="类型" HeaderContainerStyle="{StaticResource gvh}"
|
HeaderTemplate="{StaticResource gvht}">
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource CellBorder}">
|
<TextBlock Padding="6,0" Text="{Binding Type}"/>
|
</Border>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
|
<GridViewColumn Header="描述" HeaderContainerStyle="{StaticResource gvh}"
|
HeaderTemplate="{StaticResource gvht}">
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource CellBorder}">
|
<TextBlock Padding="6,0" Text="{Binding Description}"/>
|
</Border>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
|
<GridViewColumn Header="{DynamicResource se.runMode}"
|
Width="80"
|
HeaderContainerStyle="{StaticResource gvh}"
|
HeaderTemplate="{StaticResource gvht}">
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource CellBorder}" BorderThickness="1,0,1,1">
|
<TextBlock Padding="6,0" Text="{Binding RunMode}"/>
|
</Border>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
</ui:TreeListView.Columns>
|
|
<TreeView.ItemTemplate>
|
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
|
<GridViewRowPresenter
|
ContextMenu="{StaticResource stepContextMenu}"
|
Columns="{Binding Columns, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ui:TreeListView,AncestorLevel=1}}"
|
Content="{Binding }"/>
|
</HierarchicalDataTemplate>
|
</TreeView.ItemTemplate>
|
</ui:TreeListView>
|
|
</pu:FormGroup>
|
|
<pu:FormGroup Header="{DynamicResource se.propertySetting}" Orientation="Vertical"
|
Grid.Row="2" Padding="0,10" Grid.Column="2">
|
<Border x:Name="editPanelContainer" Background="#FFF">
|
</Border>
|
</pu:FormGroup>
|
</Grid>
|
</Border>
|
</hb:PluginControl>
|