83 lines
3.7 KiB
XML
83 lines
3.7 KiB
XML
<Window xmlns="https://github.com/avaloniaui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:anim="https://github.com/whistyun/AnimatedImage.Avalonia"
|
|
xmlns:vm="using:GazpromApp.ViewModels"
|
|
xmlns:views="using:GazpromApp.Views"
|
|
xmlns:icons="using:Material.Icons.Avalonia"
|
|
mc:Ignorable="d" d:DesignWidth="1024" d:DesignHeight="600"
|
|
x:Class="GazpromApp.Views.MainWindow"
|
|
x:DataType="vm:MainWindowViewModel"
|
|
x:Name="Window"
|
|
Icon="/Assets/gazpromapp.ico"
|
|
Title="GazpromApp"
|
|
WindowState="Maximized"
|
|
Closing="Window_OnClosing">
|
|
<Design.DataContext>
|
|
<vm:MainWindowViewModel/>
|
|
</Design.DataContext>
|
|
|
|
<DockPanel x:Name="Root">
|
|
<Menu DockPanel.Dock="Top">
|
|
<MenuItem Command="{Binding SyncDbCommand}">
|
|
<MenuItem.Header>
|
|
<StackPanel Orientation="Horizontal">
|
|
<icons:MaterialIcon Kind="Sync" Width="24" Height="24"/>
|
|
<TextBlock Margin="8,0,0,0" Text="Сохранить и обновить" VerticalAlignment="Center"/>
|
|
</StackPanel>
|
|
</MenuItem.Header>
|
|
</MenuItem>
|
|
<MenuItem Command="{Binding ExportPointCommand}"
|
|
CommandParameter="{Binding #Window}">
|
|
<MenuItem.Header>
|
|
<StackPanel Orientation="Horizontal">
|
|
<icons:MaterialIcon Kind="Upload" Width="24" Height="24"/>
|
|
<TextBlock Margin="8,0,0,0" Text="Экспорт" VerticalAlignment="Center"/>
|
|
</StackPanel>
|
|
</MenuItem.Header>
|
|
</MenuItem>
|
|
<MenuItem Command="{Binding ImportPointCommand}"
|
|
CommandParameter="{Binding #Window}">
|
|
<MenuItem.Header>
|
|
<StackPanel Orientation="Horizontal">
|
|
<icons:MaterialIcon Kind="Download" Width="24" Height="24"/>
|
|
<TextBlock Margin="8,0,0,0" Text="Импорт" VerticalAlignment="Center"/>
|
|
</StackPanel>
|
|
</MenuItem.Header>
|
|
</MenuItem>
|
|
</Menu>
|
|
<Grid DockPanel.Dock="Top" HorizontalAlignment="Stretch"
|
|
ColumnDefinitions="*,2,2*">
|
|
<ScrollViewer>
|
|
<StackPanel Orientation="Vertical">
|
|
<TreeView ItemsSource="{Binding Points}"
|
|
SelectionChanged="TreeView_OnSelectionChanged">
|
|
<TreeView.DataTemplates>
|
|
<TreeDataTemplate DataType="{x:Type vm:PointViewModel}"
|
|
ItemsSource="{Binding Equipment}">
|
|
<views:PointView Padding="0,0,20,0"/>
|
|
</TreeDataTemplate>
|
|
<TreeDataTemplate DataType="{x:Type vm:EquipmentViewModel}"
|
|
ItemsSource="{Binding Equipments}">
|
|
<views:EquipmentView Padding="0,0,20,0"/>
|
|
</TreeDataTemplate>
|
|
</TreeView.DataTemplates>
|
|
</TreeView>
|
|
<Button Classes="Accent" Height="32" Width="32" Margin="4" HorizontalAlignment="Center"
|
|
Command="{Binding AddPointCommand}">
|
|
<icons:MaterialIcon Kind="Add" Width="24" Height="24"/>
|
|
</Button>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
<GridSplitter Background="#b6b6b6" Grid.Column="1" ResizeDirection="Columns"/>
|
|
<ContentControl Grid.Column="2" Content="{Binding SelectedItemViewModel}"/>
|
|
<Image Width="100" Height="100" VerticalAlignment="Center"
|
|
IsVisible="{Binding IsLoading}"
|
|
HorizontalAlignment="Center"
|
|
Grid.Row="0" Grid.Column="0"
|
|
anim:ImageBehavior.AnimatedSource="avares://GazpromApp/Assets/loading.gif"/>
|
|
</Grid>
|
|
</DockPanel>
|
|
</Window>
|