a62f0ca724
- Creati nuovi Panel e Manager dedicati nella pagina LayersWall (simili ai già esistenti in Visualizzatore ma preceduti da "LayersWall") - Aggiunto ElementLayerTreeView come albero per i Composite di tipo Element e Layer - Aggiunti BTLElement e BTLLayer che ereditano da BTLPart (Element contiene Layer, Layer contiene Part e Feature)
77 lines
4.1 KiB
XML
77 lines
4.1 KiB
XML
<UserControl x:Class="ElementLayerTreeViewV"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
|
|
xmlns:local="clr-namespace:EgtBEAMWALL.ViewerOptimizer">
|
|
|
|
<UniformGrid MaxHeight="300">
|
|
<TreeView Name="ElementLayersTreeView" Grid.Row="1"
|
|
ItemsSource="{Binding Tag.BTLElementVMList,
|
|
RelativeSource={RelativeSource AncestorType={x:Type local:ElementLayerTreeViewV}}}">
|
|
<!--ItemsSource="{Binding Path=ElementLayersList}">-->
|
|
|
|
<!--<interactivity:Interaction.Triggers>
|
|
<interactivity:EventTrigger EventName="MouseDoubleClick">
|
|
<interactivity:InvokeCommandAction Command="{Binding TreeViewDoubleClickCommand}" CommandParameter="{Binding ElementName=MachiningsTreeView,Path=SelectedItem}"/>
|
|
</interactivity:EventTrigger>
|
|
</interactivity:Interaction.Triggers>-->
|
|
<!--<TreeView.InputBindings>
|
|
<KeyBinding Key="Escape" Command="{Binding CancelNewCommand}" CommandParameter="Escape"/>
|
|
</TreeView.InputBindings>-->
|
|
<TreeView.Resources>
|
|
<!--Modifico HierarchicalDataTemplate del CathegoryItem per poter inserire immagine e testo e per -->
|
|
<!--renderlo apribile con un solo click -->
|
|
<HierarchicalDataTemplate DataType="{x:Type local:BTLElementVM}" ItemsSource="{Binding BTLLayerVMList}">
|
|
<!--<HierarchicalDataTemplate DataType="{x:Type local:FamilyElementLayerTreeViewItem}" ItemsSource="{Binding Items}">-->
|
|
<!--<HierarchicalDataTemplate DataType="{x:Type local:FamilyElementLayerTreeViewItem}" ItemsSource="{Binding ElementLayersList}">-->
|
|
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="1*"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<Image Grid.Column="0" Source="{Binding PictureString}" Height="15" Margin="0,0,5,0"/>
|
|
<TextBlock Grid.Column="1" Text="{Binding sNAM_shown}"/>
|
|
|
|
</Grid>
|
|
|
|
<!--Assegna ai nodi ToolItem lo Style normale dei TreeViewItem, eliminando l'ombra, data dal
|
|
multibinding quando sono attivi.-->
|
|
<HierarchicalDataTemplate.ItemContainerStyle>
|
|
<Style TargetType="{x:Type TreeViewItem}" >
|
|
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
|
</Style>
|
|
</HierarchicalDataTemplate.ItemContainerStyle>
|
|
|
|
</HierarchicalDataTemplate>
|
|
<!--Modifico DataTemplate del ToolItem per poter inserire immagine e testo-->
|
|
<DataTemplate DataType="{x:Type local:BTLLayerVM}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"/>
|
|
<ColumnDefinition Width="1*"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<TextBlock Grid.Column="0" Text="{Binding sNAM_shown}" Margin="0,0,5,0"/>
|
|
<!--<TextBlock Grid.Column="1" Text="{Binding Tool}"/>-->
|
|
|
|
</Grid>
|
|
</DataTemplate>
|
|
</TreeView.Resources>
|
|
|
|
<!--Style dei nodi CathegoryItem che li riquadra di azzurro quando clicckati ed elimina l'ombra grigia -->
|
|
<!--che si presenta quando la categoria rimane vuota (ombra causata dal multibinding). -->
|
|
<TreeView.ItemContainerStyle>
|
|
<Style TargetType="{x:Type TreeViewItem}">
|
|
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
|
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
|
</Style>
|
|
</TreeView.ItemContainerStyle>
|
|
|
|
</TreeView>
|
|
</UniformGrid>
|
|
|
|
</UserControl>
|
|
|