forked from BornToBeRoot/NETworkManager
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathExportDialog.xaml
More file actions
84 lines (84 loc) · 5.96 KB
/
Copy pathExportDialog.xaml
File metadata and controls
84 lines (84 loc) · 5.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<UserControl x:Class="NETworkManager.Views.ExportDialog"
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:viewModels="clr-namespace:NETworkManager.ViewModels"
xmlns:localization="clr-namespace:NETworkManager.Resources.Localization"
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
xmlns:validators="clr-namespace:NETworkManager.Validators"
xmlns:converters="clr-namespace:NETworkManager.Converters"
mc:Ignorable="d" d:DataContext="{d:DesignInstance viewModels:ExportViewModel}">
<UserControl.Resources>
<converters:BooleanToVisibilityCollapsedConverter x:Key="BooleanToVisibilityCollapsedConverter" />
<converters:BooleanReverseToVisibilityCollapsedConverter x:Key="BooleanReverseToVisibilityCollapsedConverter" />
</UserControl.Resources>
<Grid Margin="0,20">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="10" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="10" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="10" />
<RowDefinition Height="Auto" />
<RowDefinition Height="10" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBlock Grid.Column="0" Grid.Row="0" Text="{x:Static localization:Strings.Export}" Style="{StaticResource DefaultTextBlock}" />
<WrapPanel Grid.Column="2" Grid.Row="0" Orientation="Horizontal">
<WrapPanel.Resources>
<Style TargetType="{x:Type RadioButton}" BasedOn="{StaticResource DefaultRadioButton}">
<Setter Property="Margin" Value="0,5,10,5" />
</Style>
</WrapPanel.Resources>
<RadioButton Content="{x:Static localization:Strings.All}" IsChecked="{Binding ExportAll}" />
<RadioButton Content="{x:Static localization:Strings.Selected}" IsChecked="{Binding ExportSelected}" Visibility="{Binding TextOnly, Converter={StaticResource BooleanReverseToVisibilityCollapsedConverter}}" Margin="10,0,0,0" />
</WrapPanel>
<TextBlock Grid.Column="0" Grid.Row="2" Text="{x:Static localization:Strings.Format}" Style="{StaticResource DefaultTextBlock}" />
<WrapPanel Grid.Column="2" Grid.Row="2" Orientation="Horizontal">
<WrapPanel.Resources>
<Style TargetType="{x:Type RadioButton}" BasedOn="{StaticResource DefaultRadioButton}">
<Setter Property="Margin" Value="0,5,10,5" />
</Style>
</WrapPanel.Resources>
<RadioButton Content="{x:Static localization:StaticStrings.CSV}" IsChecked="{Binding UseCSV}" Visibility="{Binding TextOnly, Converter={StaticResource BooleanReverseToVisibilityCollapsedConverter}}" />
<RadioButton Content="{x:Static localization:StaticStrings.XML}" IsChecked="{Binding UseXML}" Visibility="{Binding TextOnly, Converter={StaticResource BooleanReverseToVisibilityCollapsedConverter}}" Margin="10,0,0,0" />
<RadioButton Content="{x:Static localization:StaticStrings.JSON}" IsChecked="{Binding UseJSON}" Visibility="{Binding TextOnly, Converter={StaticResource BooleanReverseToVisibilityCollapsedConverter}}" Margin="10,0,0,0" />
<RadioButton Content="{x:Static localization:StaticStrings.TXT}" IsChecked="{Binding UseTXT}" Visibility="{Binding TextOnly, Converter={StaticResource BooleanToVisibilityCollapsedConverter}}" />
</WrapPanel>
<TextBlock Grid.Column="0" Grid.Row="4" Text="{x:Static localization:Strings.Path}" Style="{StaticResource DefaultTextBlock}" />
<TextBox Grid.Column="2" Grid.Row="4" x:Name="TextBoxExportFilePath" mah:TextBoxHelper.Watermark="{x:Static localization:Strings.Location}" Style="{StaticResource BrowseFolderTextBox}" mah:TextBoxHelper.ButtonCommand="{Binding BrowseFileCommand}">
<TextBox.Text>
<Binding Path="FilePath" Mode="TwoWay" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<validators:EmptyValidator ValidatesOnTargetUpdated="True" />
<validators:FilePathValidator ValidatesOnTargetUpdated="True" />
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
</Grid>
<StackPanel Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Right">
<Button Content="{x:Static localization:Strings.Cancel}" Command="{Binding CancelCommand}" IsCancel="True" Style="{StaticResource DefaultButton}" />
<Button Content="{x:Static localization:Strings.Export}" Command="{Binding ExportCommand}" IsDefault="True" Margin="10,0,0,0">
<Button.Style>
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource HighlightedButton}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=TextBoxExportFilePath, Path=(Validation.HasError)}" Value="True">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
</StackPanel>
</Grid>
</UserControl>