ParameterSelectDialogView.xaml 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <UserControl x:Class="MECF.Framework.UI.Client.CenterViews.Editors.Parameter.ParameterSelectDialogView"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
  7. xmlns:micro="clr-namespace:Caliburn.Micro"
  8. xmlns:editors="clr-namespace:MECF.Framework.UI.Client.CenterViews.Editors"
  9. mc:Ignorable="d"
  10. Width="350"
  11. Height="480">
  12. <UserControl.Resources>
  13. <HierarchicalDataTemplate x:Key="FolderTemplate" ItemsSource="{Binding Files}" >
  14. <StackPanel Orientation="Horizontal" Tag="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}, Path=DataContext}">
  15. <Image x:Name="ExpandImage" Source="/MECF.Framework.UI.Client;component/Resources/Images/Folder_Close.png" Width="14" Height="12" Margin="2,0,0,0" VerticalAlignment="Center"/>
  16. <TextBlock Text="{Binding Name}" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  17. </StackPanel>
  18. <HierarchicalDataTemplate.Triggers>
  19. <Trigger Property="IsEnabled" Value="True">
  20. <Setter Property="Image.Source" TargetName="ExpandImage" Value="/MECF.Framework.UI.Client;component/Resources/Images/Folder_Unable.png"/>
  21. </Trigger>
  22. </HierarchicalDataTemplate.Triggers>
  23. </HierarchicalDataTemplate>
  24. <HierarchicalDataTemplate x:Key="FileTemplate" ItemsSource="{Binding Files}">
  25. <StackPanel Orientation="Horizontal" Tag="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}, Path=DataContext}">
  26. <Path Data="M0.5,5.125 L5.125,5.125 5.125,0.5 M5.1,0.5 L15.5,0.5 15.5,19.5 0.5,19.5 C0.5,14.7 0.5,10 0.5,5.1 2,3.6 3.6,2 5.1,0.5 z M8.1,8.5 L8.2,8.5 z M8.1,11.5 L8.2,11.5 z M8.1,14.5 L8.2,14.5 z" Fill="#FFF3F3F3" HorizontalAlignment="Left" Stretch="Fill" Stroke="#FF454545" Width="13" Height="16"/>
  27. <TextBlock Text="{Binding Name}" FontSize="15" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  28. </StackPanel>
  29. </HierarchicalDataTemplate>
  30. <editors:FolderOrFileTemplateSelector x:Key="FolderFileTemplateSelector"
  31. FolderTemplate="{StaticResource FolderTemplate}" FileTemplate="{StaticResource FileTemplate}"/>
  32. </UserControl.Resources>
  33. <Border BorderBrush="Gray" BorderThickness="0,1,0,0" Background="{DynamicResource Tab_BG}">
  34. <Grid Margin="10">
  35. <Grid.RowDefinitions>
  36. <RowDefinition />
  37. <RowDefinition Height="auto"/>
  38. </Grid.RowDefinitions>
  39. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0" Background="Transparent">
  40. <TabControl ItemsSource="{Binding ProcessTypeFileList}" VerticalAlignment="Stretch" VerticalContentAlignment="Stretch"
  41. HorizontalContentAlignment="Stretch" HorizontalAlignment="Stretch" Padding="0"
  42. SelectedIndex="{Binding ProcessTypeIndexSelection, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
  43. <TabControl.ItemTemplate>
  44. <DataTemplate>
  45. <TextBlock Text="{Binding ProcessType}" />
  46. </DataTemplate>
  47. </TabControl.ItemTemplate>
  48. <TabControl.ContentTemplate>
  49. <DataTemplate>
  50. <TreeView x:Name="RecipeTree1" Margin="0" VerticalAlignment="Stretch"
  51. ItemsSource="{Binding FileListByProcessType}"
  52. ItemTemplateSelector="{StaticResource FolderFileTemplateSelector}"
  53. Tag="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}, Path=DataContext}"
  54. VirtualizingPanel.IsVirtualizing="True"
  55. VirtualizingPanel.VirtualizationMode="Recycling"
  56. Height="{Binding Path=ActualHeight,ElementName=PART_BORDER, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}">
  57. <TreeView.ItemContainerStyle>
  58. <Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource TreeViewItemExtend}">
  59. <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"></Setter>
  60. <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}"></Setter>
  61. </Style>
  62. </TreeView.ItemContainerStyle>
  63. <i:Interaction.Triggers>
  64. <i:EventTrigger EventName="SelectedItemChanged">
  65. <micro:ActionMessage MethodName="TreeSelectChanged">
  66. <micro:Parameter Value="{Binding SelectedItem, ElementName=RecipeTree1}" />
  67. </micro:ActionMessage>
  68. </i:EventTrigger>
  69. <i:EventTrigger EventName="MouseDoubleClick">
  70. <micro:ActionMessage MethodName="TreeMouseDoubleClick">
  71. <micro:Parameter Value="{Binding SelectedItem, ElementName=RecipeTree1}" />
  72. </micro:ActionMessage>
  73. </i:EventTrigger>
  74. </i:Interaction.Triggers>
  75. </TreeView>
  76. </DataTemplate>
  77. </TabControl.ContentTemplate>
  78. </TabControl>
  79. </Border>
  80. <StackPanel Grid.Row="1" Margin="0,10,0,0" Orientation="Horizontal" HorizontalAlignment="Center">
  81. <Button Content="OK" >
  82. <i:Interaction.Triggers>
  83. <i:EventTrigger EventName="Click">
  84. <micro:ActionMessage MethodName="OK">
  85. </micro:ActionMessage>
  86. </i:EventTrigger>
  87. </i:Interaction.Triggers>
  88. </Button>
  89. <Button Content="Cancel" Margin="10,0,0,0">
  90. <i:Interaction.Triggers>
  91. <i:EventTrigger EventName="Click">
  92. <micro:ActionMessage MethodName="Cancel">
  93. </micro:ActionMessage>
  94. </i:EventTrigger>
  95. </i:Interaction.Triggers>
  96. </Button>
  97. </StackPanel>
  98. </Grid>
  99. </Border>
  100. </UserControl>