ProcessRecipeView.xaml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <UserControl x:Class="FurnaceUI.Views.Recipes.ProcessRecipeView"
  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:local="clr-namespace:FurnaceUI.Views.Recipes" xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  7. xmlns:cal="http://www.caliburn.org"
  8. xmlns:editors="clr-namespace:MECF.Framework.UI.Client.CenterViews.Editors;assembly=MECF.Framework.UI.Client"
  9. mc:Ignorable="d"
  10. Height="560" Width="1000" FontFamily="Segoe">
  11. <UserControl.Resources>
  12. <HierarchicalDataTemplate x:Key="FolderTemplate" ItemsSource="{Binding Files}" >
  13. <StackPanel Orientation="Horizontal" Tag="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}, Path=DataContext}">
  14. <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"/>
  15. <TextBlock Width="200" Text="{Binding Name}" FontSize="15" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  16. </StackPanel>
  17. <HierarchicalDataTemplate.Triggers>
  18. <Trigger Property="IsEnabled" Value="false">
  19. <Setter Property="Image.Source" TargetName="ExpandImage" Value="/MECF.Framework.UI.Client;component/Resources/Images/Folder_Unable.png"/>
  20. </Trigger>
  21. </HierarchicalDataTemplate.Triggers>
  22. </HierarchicalDataTemplate>
  23. <HierarchicalDataTemplate x:Key="FileTemplate" ItemsSource="{Binding Files}">
  24. <StackPanel Orientation="Horizontal" Tag="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}, Path=DataContext}">
  25. <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"/>
  26. <TextBlock Width="300" Text="{Binding Name}" FontSize="15" FontFamily="Segoe" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  27. <TextBlock Width="100" Text="LEVEL1" FontSize="15" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  28. <TextBlock Width="100" Text="Part" FontSize="15" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  29. <TextBlock Width="100" Text="Free" FontSize="15" Margin="5,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
  30. </StackPanel>
  31. </HierarchicalDataTemplate>
  32. <editors:FolderOrFileTemplateSelector x:Key="FolderFileTemplateSelector" FolderTemplate="{StaticResource FolderTemplate}" FileTemplate="{StaticResource FileTemplate}"/>
  33. </UserControl.Resources>
  34. <Grid>
  35. <Grid.RowDefinitions>
  36. <RowDefinition Height="80"/>
  37. <RowDefinition Height="430"/>
  38. <RowDefinition Height="50"/>
  39. </Grid.RowDefinitions>
  40. <Button Grid.Row="0" Style="{StaticResource PageTitleButton}" Content="Process Recipe" Width="250" HorizontalAlignment="Left" Margin="10" />
  41. <!--<DataGrid x:Name="DGProcessRecipe" Grid.Row="1">
  42. <DataGrid.Columns>
  43. <DataGridTextColumn Header="Recipe name" Width="120"/>
  44. <DataGridTextColumn Header="Privilege" Width="120"/>
  45. <DataGridTextColumn Header="Status" Width="120"/>
  46. <DataGridTextColumn Header="Protection"/>
  47. <DataGridTextColumn Header="Command" Width="320"/>
  48. </DataGrid.Columns>
  49. </DataGrid>-->
  50. <TreeView Grid.Row="1" ItemsSource="{Binding ProcessTypeFileList}">
  51. <TreeView.ItemTemplate>
  52. <DataTemplate>
  53. <ScrollViewer Grid.Row="1" Height="Auto" Width="Auto" Margin="0,0,0,0" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
  54. <TreeView x:Name="RecipeTree1" Margin="0" VerticalAlignment="Stretch"
  55. ItemsSource="{Binding FileListByProcessType}"
  56. ItemTemplateSelector="{StaticResource FolderFileTemplateSelector}"
  57. Tag="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}, Path=DataContext}"
  58. VirtualizingPanel.IsVirtualizing="True"
  59. VirtualizingPanel.VirtualizationMode="Recycling"
  60. Height="{Binding Path=ActualHeight,ElementName=PART_BORDER, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" >
  61. <TreeView.ItemContainerStyle>
  62. <Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource TreeViewItemExtend}">
  63. <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"></Setter>
  64. <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}"></Setter>
  65. </Style>
  66. </TreeView.ItemContainerStyle>
  67. <i:Interaction.Triggers>
  68. <i:EventTrigger EventName="SelectedItemChanged">
  69. <cal:ActionMessage MethodName="TreeSelectChanged">
  70. <cal:Parameter Value="{Binding SelectedItem, ElementName=RecipeTree1}" />
  71. </cal:ActionMessage>
  72. </i:EventTrigger>
  73. </i:Interaction.Triggers>
  74. </TreeView>
  75. </ScrollViewer>
  76. </DataTemplate>
  77. </TreeView.ItemTemplate>
  78. </TreeView>
  79. <DockPanel Grid.Row="2" Grid.Column="0" HorizontalAlignment="Right" VerticalAlignment="Bottom">
  80. <Border Margin="4">
  81. <Button Content="Recipe&#13;attribute" Style="{StaticResource CommandButton}"/>
  82. </Border>
  83. <Border Margin="4">
  84. <Button Content="VIEW">
  85. </Button>
  86. </Border>
  87. <Border Margin="4">
  88. <Button Content="EDIT">
  89. <i:Interaction.Triggers>
  90. <i:EventTrigger EventName="Click">
  91. <cal:ActionMessage MethodName="SwitchPage">
  92. <cal:Parameter Value="RecipeEdit"/>
  93. </cal:ActionMessage>
  94. </i:EventTrigger>
  95. </i:Interaction.Triggers>
  96. </Button>
  97. </Border>
  98. </DockPanel>
  99. </Grid>
  100. </UserControl>