<UserControl x:Class="OpenTapEditor.VariableTree"
|
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:OpenTapEditor"
|
mc:Ignorable="d"
|
xmlns:ui="clr-namespace:UILib;assembly=UILib"
|
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
xmlns:addIn="clr-namespace:OpenTap.Addin;assembly=OpenTap"
|
d:DesignHeight="450" d:DesignWidth="800">
|
<UserControl.Resources>
|
<ResourceDictionary>
|
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary Source="/UILib;component/Themes/Generic.xaml"/>
|
</ResourceDictionary.MergedDictionaries>
|
<ObjectDataProvider x:Key="TypeEnum" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
|
<ObjectDataProvider.MethodParameters>
|
<x:Type TypeName="addIn:TestVariableType"/>
|
</ObjectDataProvider.MethodParameters>
|
</ObjectDataProvider>
|
</ResourceDictionary>
|
</UserControl.Resources>
|
|
<Grid>
|
<ui:TreeListView Grid.Row="1" Grid.Column="0"
|
ItemsSource="{Binding Datasource}" AlternationCount="2"
|
PreviewMouseRightButtonDown="OnPreviewMouseRightButtonDown"
|
ChildrenPath="Children"
|
ItemTemplate="{StaticResource DefaultTreeNodeItemTemplate}"
|
ItemSelectedColor="#c1dcf9"
|
ItemSelectedForeground="Black"
|
BorderColor="{StaticResource BorderBrush}"
|
x:Name="treeView">
|
<ui:TreeListView.Columns>
|
<GridViewColumn Header="{DynamicResource 名称}" Width="200" >
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource TreeCellBoard}">
|
<DockPanel>
|
<ToggleButton x:Name="Expander" Style="{StaticResource SimpleToggleButton}" ClickMode="Press"/>
|
<ui:EditBox Margin="5,0,0,0"
|
PreSubmit="VariableNamePreSubmit"
|
Tag="{Binding RelativeSource={RelativeSource AncestorType=ui:TreeListViewItem}}"
|
Value="{Binding Title,Mode=TwoWay}">
|
<ui:EditBox.CanEdit>
|
<MultiBinding Converter="{x:Static local:MultiTestVariableConverter.Instance}" ConverterParameter="NameCanEdit">
|
<Binding Path=""/>
|
<Binding Path="" RelativeSource="{RelativeSource AncestorType=ui:TreeListViewItem}"/>
|
</MultiBinding>
|
</ui:EditBox.CanEdit>
|
</ui:EditBox>
|
</DockPanel>
|
</Border>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
|
<GridViewColumn Header="{DynamicResource 类型}" Width="100">
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource TreeCellBoard}">
|
<DockPanel>
|
<Button Tag="{Binding RelativeSource={RelativeSource AncestorType=ui:TreeListViewItem}}"
|
FontFamily="{StaticResource iconfont}"
|
Style="{StaticResource SimpleBtn}"
|
Height="Auto"
|
VerticalContentAlignment="Center" Click="ChangeButton_Click" DockPanel.Dock="Right"
|
Content="" >
|
<Button.Visibility>
|
<MultiBinding Converter="{x:Static local:MultiTestVariableConverter.Instance}" ConverterParameter="ChangeButton">
|
<Binding Path=""/>
|
<Binding Path="" RelativeSource="{RelativeSource AncestorType=ui:TreeListViewItem}"/>
|
</MultiBinding>
|
</Button.Visibility>
|
</Button>
|
<TextBlock Text="{Binding Mode=OneWay,Converter={x:Static local:TestVariableConverter.Instance},ConverterParameter='TypeName'}"/>
|
</DockPanel>
|
</Border>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
|
<GridViewColumn Header="{DynamicResource 值}" Width="100" >
|
<GridViewColumn.CellTemplate>
|
<DataTemplate>
|
<Border Style="{StaticResource TreeCellBoard}">
|
<ui:EditBox Value="{Binding Value,Mode=TwoWay}"
|
FormatString="{Binding Converter={x:Static local:TestVariableConverter.Instance},ConverterParameter='StringFormat'}"
|
EditType="{Binding Converter={x:Static local:TestVariableConverter.Instance},ConverterParameter='EditType'}"
|
CanEdit="{Binding Mode=OneWay,Converter={x:Static local:TestVariableConverter.Instance},ConverterParameter='CanEdit'}"/>
|
</Border>
|
</DataTemplate>
|
</GridViewColumn.CellTemplate>
|
</GridViewColumn>
|
|
</ui:TreeListView.Columns>
|
|
<!--<TreeView.ItemContainerStyle>
|
<Style TargetType="TreeViewItem">
|
<EventSetter Event="PreviewMouseDoubleClick"
|
Handler="TreeViewItem_PreviewMouseDoubleClick"/>
|
</Style>
|
</TreeView.ItemContainerStyle>-->
|
</ui:TreeListView>
|
</Grid>
|
</UserControl>
|