[Refactor] Set explicit binding modes.

This commit is contained in:
2025-07-08 18:14:37 +01:00
parent 563ffcdd32
commit d041e7b1b3
12 changed files with 209 additions and 209 deletions

View File

@@ -57,13 +57,13 @@
VerticalAlignment="Center" VerticalAlignment="Center"
RowDefinitions="Auto,Auto"> RowDefinitions="Auto,Auto">
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="{Binding SoftwareName}" Text="{Binding SoftwareName, Mode=OneWay}"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
FontSize="16" FontSize="16"
FontWeight="Bold" /> FontWeight="Bold" />
<TextBlock Grid.Row="1" <TextBlock Grid.Row="1"
Text="{Binding VersionText}" Text="{Binding VersionText, Mode=OneWay}"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
</Grid> </Grid>
@@ -77,18 +77,18 @@
</TabItem.Header> </TabItem.Header>
<Grid RowDefinitions="Auto,12,Auto,12,Auto,Auto,*"> <Grid RowDefinitions="Auto,12,Auto,12,Auto,Auto,*">
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="{Binding SuiteName}" /> Text="{Binding SuiteName, Mode=OneWay}" />
<TextBlock Grid.Row="2" <TextBlock Grid.Row="2"
Text="{Binding Copyright}" /> Text="{Binding Copyright, Mode=OneWay}" />
<Button Grid.Row="4" <Button Grid.Row="4"
BorderThickness="0" BorderThickness="0"
Background="Transparent" Background="Transparent"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Padding="0" Padding="0"
Command="{Binding WebsiteCommand}"> Command="{Binding WebsiteCommand, Mode=OneWay}">
<!-- TODO: TextDecorations="Underline" in next Avalonia UI version --> <!-- TODO: TextDecorations="Underline" in next Avalonia UI version -->
<TextBlock Text="{Binding Website}" <TextBlock Text="{Binding Website, Mode=OneWay}"
Foreground="Blue" /> Foreground="Blue" />
</Button> </Button>
<Button Grid.Row="5" <Button Grid.Row="5"
@@ -97,7 +97,7 @@
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Padding="0" Padding="0"
Command="{Binding LicenseCommand}"> Command="{Binding LicenseCommand, Mode=OneWay}">
<!-- TODO: TextDecorations="Underline" in next Avalonia UI version --> <!-- TODO: TextDecorations="Underline" in next Avalonia UI version -->
<TextBlock Text="{x:Static resources:Localization.LicenseLabel}" <TextBlock Text="{x:Static resources:Localization.LicenseLabel}"
Foreground="Blue" /> Foreground="Blue" />
@@ -108,17 +108,17 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{x:Static resources:Localization.LibrariesLabel}" /> <TextBlock Text="{x:Static resources:Localization.LibrariesLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid ItemsSource="{Binding Assemblies}" <DataGrid ItemsSource="{Binding Assemblies, Mode=OneWay}"
HorizontalScrollBarVisibility="Visible"> HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" <DataGridTextColumn Binding="{Binding Name, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.AssembliesLibraryText}" /> <TextBlock Text="{x:Static resources:Localization.AssembliesLibraryText}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Version}" <DataGridTextColumn Binding="{Binding Version, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
@@ -139,7 +139,7 @@
<Button Grid.Row="2" <Button Grid.Row="2"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</Grid> </Grid>

View File

@@ -56,7 +56,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Name}" Text="{Binding Name, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="1" <Grid Grid.Row="1"
@@ -70,7 +70,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Version}" Text="{Binding Version, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="2" <Grid Grid.Row="2"
@@ -84,7 +84,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Author}" Text="{Binding Author, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="3" <Grid Grid.Row="3"
@@ -98,7 +98,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Category}" Text="{Binding Category, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="4" <Grid Grid.Row="4"
@@ -112,7 +112,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Comment}" Text="{Binding Comment, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="5" <Grid Grid.Row="5"
@@ -126,7 +126,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Date}" Text="{Binding Date, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="6" <Grid Grid.Row="6"
@@ -140,7 +140,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Description}" Text="{Binding Description, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="7" <Grid Grid.Row="7"
@@ -154,7 +154,7 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Homepage}" Text="{Binding Homepage, Mode=TwoWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="8" <Grid Grid.Row="8"
@@ -168,7 +168,7 @@
<TextBlock Grid.Column="1" <TextBlock Grid.Column="1"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding TotalMachines}" Text="{Binding TotalMachines, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="9" <Grid Grid.Row="9"
@@ -182,7 +182,7 @@
<TextBlock Grid.Column="1" <TextBlock Grid.Column="1"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding CompleteMachines}" Text="{Binding CompleteMachines, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="10" <Grid Grid.Row="10"
@@ -196,7 +196,7 @@
<TextBlock Grid.Column="1" <TextBlock Grid.Column="1"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding IncompleteMachines}" Text="{Binding IncompleteMachines, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="11" <Grid Grid.Row="11"
@@ -210,7 +210,7 @@
<TextBlock Grid.Column="1" <TextBlock Grid.Column="1"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding TotalRoms}" Text="{Binding TotalRoms, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="12" <Grid Grid.Row="12"
@@ -224,7 +224,7 @@
<TextBlock Grid.Column="1" <TextBlock Grid.Column="1"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding HaveRoms}" Text="{Binding HaveRoms, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<Grid Grid.Row="13" <Grid Grid.Row="13"
@@ -238,7 +238,7 @@
<TextBlock Grid.Column="1" <TextBlock Grid.Column="1"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding MissRoms}" Text="{Binding MissRoms, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<StackPanel Grid.Row="14" <StackPanel Grid.Row="14"
@@ -246,20 +246,20 @@
HorizontalAlignment="Right"> HorizontalAlignment="Right">
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding SaveCommand}" Command="{Binding SaveCommand, Mode=OneWay}"
IsVisible="{Binding Modified}"> IsVisible="{Binding Modified, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.SaveLabel}" /> <TextBlock Text="{x:Static resources:Localization.SaveLabel}" />
</Button> </Button>
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding CancelCommand}" Command="{Binding CancelCommand, Mode=OneWay}"
IsVisible="{Binding Modified}"> IsVisible="{Binding Modified, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CancelLabel}" /> <TextBlock Text="{x:Static resources:Localization.CancelLabel}" />
</Button> </Button>
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding CloseCommand}" Command="{Binding CloseCommand, Mode=OneWay}"
IsVisible="{Binding !Modified}"> IsVisible="{Binding !Modified, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</StackPanel> </StackPanel>

View File

@@ -46,22 +46,22 @@
<Border Padding="15"> <Border Padding="15">
<Grid RowDefinitions="Auto,auto,Auto,Auto"> <Grid RowDefinitions="Auto,auto,Auto,Auto">
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="1" <ProgressBar Grid.Row="1"
IsIndeterminate="True" IsIndeterminate="True"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
IsVisible="{Binding ProgressVisible}" /> IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
<TextBlock Grid.Row="2" <TextBlock Grid.Row="2"
Text="{Binding ErrorMessage}" Text="{Binding ErrorMessage, Mode=OneWay}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
Foreground="Red" Foreground="Red"
IsVisible="{Binding ErrorVisible}" /> IsVisible="{Binding ErrorVisible, Mode=OneWay}" />
<Button Grid.Row="3" <Button Grid.Row="3"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanClose}" IsEnabled="{Binding CanClose, Mode=OneWay}"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</Grid> </Grid>

View File

@@ -50,39 +50,39 @@
HorizontalAlignment="Stretch"> HorizontalAlignment="Stretch">
<TextBlock Text="{x:Static resources:Localization.PathLabel}" <TextBlock Text="{x:Static resources:Localization.PathLabel}"
FontWeight="Bold" /> FontWeight="Bold" />
<TextBlock Text="{Binding FolderPath}" /> <TextBlock Text="{Binding FolderPath, Mode=OneWay}" />
</StackPanel> </StackPanel>
<TextBlock Grid.Row="1" <TextBlock Grid.Row="1"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
FontWeight="Bold" FontWeight="Bold"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="2" <ProgressBar Grid.Row="2"
Minimum="{Binding ProgressMinimum}" Minimum="{Binding ProgressMinimum, Mode=OneWay}"
Maximum="{Binding ProgressMaximum}" Maximum="{Binding ProgressMaximum, Mode=OneWay}"
Value="{Binding ProgressValue}" Value="{Binding ProgressValue, Mode=OneWay}"
IsIndeterminate="{Binding ProgressIsIndeterminate}" IsIndeterminate="{Binding ProgressIsIndeterminate, Mode=OneWay}"
IsVisible="{Binding ProgressVisible}" /> IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
<StackPanel Grid.Row="3" <StackPanel Grid.Row="3"
IsVisible="{Binding Progress2Visible}"> IsVisible="{Binding Progress2Visible, Mode=OneWay}">
<TextBlock Text="{Binding Status2Message}" /> <TextBlock Text="{Binding Status2Message, Mode=OneWay}" />
<ProgressBar Minimum="{Binding Progress2Minimum}" <ProgressBar Minimum="{Binding Progress2Minimum, Mode=OneWay}"
Maximum="{Binding Progress2Maximum}" Maximum="{Binding Progress2Maximum, Mode=OneWay}"
Value="{Binding Progress2Value}" Value="{Binding Progress2Value, Mode=OneWay}"
IsIndeterminate="{Binding Progress2IsIndeterminate}" /> IsIndeterminate="{Binding Progress2IsIndeterminate, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel Grid.Row="4" <StackPanel Grid.Row="4"
IsVisible="{Binding Progress3Visible}"> IsVisible="{Binding Progress3Visible, Mode=OneWay}">
<TextBlock Text="{Binding Status3Message}" /> <TextBlock Text="{Binding Status3Message, Mode=OneWay}" />
<ProgressBar Minimum="{Binding Progress3Minimum}" <ProgressBar Minimum="{Binding Progress3Minimum, Mode=OneWay}"
Maximum="{Binding Progress3Maximum}" Maximum="{Binding Progress3Maximum, Mode=OneWay}"
Value="{Binding Progress3Value}" Value="{Binding Progress3Value, Mode=OneWay}"
IsIndeterminate="{Binding Progress3IsIndeterminate}" /> IsIndeterminate="{Binding Progress3IsIndeterminate, Mode=OneWay}" />
</StackPanel> </StackPanel>
<Button Grid.Row="5" <Button Grid.Row="5"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanClose}" IsEnabled="{Binding CanClose, Mode=OneWay}"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</Grid> </Grid>

View File

@@ -46,25 +46,25 @@
<Border Padding="15"> <Border Padding="15">
<Grid RowDefinitions="Auto,auto,Auto,Auto"> <Grid RowDefinitions="Auto,auto,Auto,Auto">
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="1" <ProgressBar Grid.Row="1"
IsIndeterminate="{Binding IndeterminateProgress}" IsIndeterminate="{Binding IndeterminateProgress, Mode=OneWay}"
Maximum="{Binding MaximumValue}" Maximum="{Binding MaximumValue, Mode=OneWay}"
Minimum="{Binding MinimumValue}" Minimum="{Binding MinimumValue, Mode=OneWay}"
Value="{Binding CurrentValue}" Value="{Binding CurrentValue, Mode=OneWay}"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
IsVisible="{Binding ProgressVisible}" /> IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
<TextBlock Grid.Row="2" <TextBlock Grid.Row="2"
Text="{Binding ErrorMessage}" Text="{Binding ErrorMessage, Mode=OneWay}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
Foreground="Red" Foreground="Red"
IsVisible="{Binding ErrorVisible}" /> IsVisible="{Binding ErrorVisible, Mode=OneWay}" />
<Button Grid.Row="3" <Button Grid.Row="3"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanClose}" IsEnabled="{Binding CanClose, Mode=OneWay}"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</Grid> </Grid>

View File

@@ -50,7 +50,7 @@
HorizontalAlignment="Stretch"> HorizontalAlignment="Stretch">
<TextBlock Text="{x:Static resources:Localization.PathLabel}" <TextBlock Text="{x:Static resources:Localization.PathLabel}"
FontWeight="Bold" /> FontWeight="Bold" />
<TextBlock Text="{Binding FolderPath}" /> <TextBlock Text="{Binding FolderPath, Mode=OneWay}" />
</StackPanel> </StackPanel>
<Grid Grid.Row="1" <Grid Grid.Row="1"
ColumnDefinitions="Auto,*"> ColumnDefinitions="Auto,*">
@@ -63,54 +63,54 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding Category}" Text="{Binding Category, Mode=OneWay}"
Padding="5" /> Padding="5" />
</Grid> </Grid>
<CheckBox Grid.Row="2" <CheckBox Grid.Row="2"
IsChecked="{Binding AllFilesChecked}" IsChecked="{Binding AllFilesChecked, Mode=TwoWay}"
IsEnabled="{Binding IsReady}"> IsEnabled="{Binding IsReady, Mode=OneWay}">
<CheckBox.Content> <CheckBox.Content>
<TextBlock Text="{x:Static resources:Localization.AllFilesLabel}" /> <TextBlock Text="{x:Static resources:Localization.AllFilesLabel}" />
</CheckBox.Content> </CheckBox.Content>
</CheckBox> </CheckBox>
<CheckBox Grid.Row="3" <CheckBox Grid.Row="3"
IsChecked="{Binding RecursiveChecked}" IsChecked="{Binding RecursiveChecked, Mode=TwoWay}"
IsEnabled="{Binding IsReady}"> IsEnabled="{Binding IsReady, Mode=OneWay}">
<CheckBox.Content> <CheckBox.Content>
<TextBlock Text="{x:Static resources:Localization.RecursiveLabel}" /> <TextBlock Text="{x:Static resources:Localization.RecursiveLabel}" />
</CheckBox.Content> </CheckBox.Content>
</CheckBox> </CheckBox>
<TextBlock Grid.Row="4" <TextBlock Grid.Row="4"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
FontWeight="Bold" FontWeight="Bold"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="5" <ProgressBar Grid.Row="5"
Minimum="{Binding ProgressMinimum}" Minimum="{Binding ProgressMinimum, Mode=OneWay}"
Maximum="{Binding ProgressMaximum}" Maximum="{Binding ProgressMaximum, Mode=OneWay}"
Value="{Binding ProgressValue}" Value="{Binding ProgressValue, Mode=OneWay}"
IsIndeterminate="{Binding ProgressIsIndeterminate}" IsIndeterminate="{Binding ProgressIsIndeterminate, Mode=OneWay}"
IsVisible="{Binding ProgressVisible}" /> IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
<StackPanel Grid.Row="6" <StackPanel Grid.Row="6"
IsVisible="{Binding Progress2Visible}"> IsVisible="{Binding Progress2Visible, Mode=OneWay}">
<TextBlock Text="{Binding Status2Message}" /> <TextBlock Text="{Binding Status2Message, Mode=OneWay}" />
<ProgressBar Minimum="{Binding Progress2Minimum}" <ProgressBar Minimum="{Binding Progress2Minimum, Mode=OneWay}"
Maximum="{Binding Progress2Maximum}" Maximum="{Binding Progress2Maximum, Mode=OneWay}"
Value="{Binding Progress2Value}" Value="{Binding Progress2Value, Mode=OneWay}"
IsIndeterminate="{Binding Progress2IsIndeterminate}" /> IsIndeterminate="{Binding Progress2IsIndeterminate, Mode=OneWay}" />
</StackPanel> </StackPanel>
<DataGrid Grid.Row="7" <DataGrid Grid.Row="7"
ItemsSource="{Binding ImportResults}" ItemsSource="{Binding ImportResults, Mode=OneWay}"
HorizontalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"
IsVisible="{Binding IsImporting}"> IsVisible="{Binding IsImporting, Mode=OneWay}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Filename}" <DataGridTextColumn Binding="{Binding Filename, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.ResultFilenameLabel}" /> <TextBlock Text="{x:Static resources:Localization.ResultFilenameLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Status}" <DataGridTextColumn Binding="{Binding Status, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
@@ -121,18 +121,18 @@
</DataGrid> </DataGrid>
<StackPanel Grid.Row="8" <StackPanel Grid.Row="8"
Orientation="Horizontal" Orientation="Horizontal"
IsVisible="{Binding IsReady}" IsVisible="{Binding IsReady, Mode=OneWay}"
HorizontalAlignment="Right"> HorizontalAlignment="Right">
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanClose}" IsEnabled="{Binding CanClose, Mode=OneWay}"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanStart}" IsEnabled="{Binding CanStart, Mode=OneWay}"
Command="{Binding StartCommand}"> Command="{Binding StartCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.StartLabel}" /> <TextBlock Text="{x:Static resources:Localization.StartLabel}" />
</Button> </Button>
</StackPanel> </StackPanel>

View File

@@ -50,62 +50,62 @@
HorizontalAlignment="Stretch"> HorizontalAlignment="Stretch">
<TextBlock Text="{x:Static resources:Localization.PathLabel}" <TextBlock Text="{x:Static resources:Localization.PathLabel}"
FontWeight="Bold" /> FontWeight="Bold" />
<TextBlock Text="{Binding FolderPath}" /> <TextBlock Text="{Binding FolderPath, Mode=OneWay}" />
</StackPanel> </StackPanel>
<CheckBox Grid.Row="1" <CheckBox Grid.Row="1"
IsChecked="{Binding RemoveFilesChecked}" IsChecked="{Binding RemoveFilesChecked, Mode=TwoWay}"
IsEnabled="{Binding RemoveFilesEnabled}" IsEnabled="{Binding RemoveFilesEnabled, Mode=OneWay}"
IsVisible="{Binding IsReady}"> IsVisible="{Binding IsReady, Mode=OneWay}">
<CheckBox.Content> <CheckBox.Content>
<TextBlock Text="{x:Static resources:Localization.RemoveFilesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RemoveFilesLabel}" />
</CheckBox.Content> </CheckBox.Content>
</CheckBox> </CheckBox>
<CheckBox Grid.Row="2" <CheckBox Grid.Row="2"
IsChecked="{Binding KnownOnlyChecked}" IsChecked="{Binding KnownOnlyChecked, Mode=TwoWay}"
IsVisible="{Binding IsReady}"> IsVisible="{Binding IsReady, Mode=OneWay}">
<CheckBox.Content> <CheckBox.Content>
<TextBlock Text="{x:Static resources:Localization.KnownOnlyLabel}" /> <TextBlock Text="{x:Static resources:Localization.KnownOnlyLabel}" />
</CheckBox.Content> </CheckBox.Content>
</CheckBox> </CheckBox>
<CheckBox Grid.Row="3" <CheckBox Grid.Row="3"
IsChecked="{Binding RecurseArchivesChecked}" IsChecked="{Binding RecurseArchivesChecked, Mode=TwoWay}"
IsEnabled="{Binding RecurseArchivesEnabled}" IsEnabled="{Binding RecurseArchivesEnabled, Mode=OneWay}"
IsVisible="{Binding IsReady}"> IsVisible="{Binding IsReady, Mode=OneWay}">
<CheckBox.Content> <CheckBox.Content>
<TextBlock Text="{x:Static resources:Localization.RecurseArchivesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RecurseArchivesLabel}" />
</CheckBox.Content> </CheckBox.Content>
</CheckBox> </CheckBox>
<TextBlock Grid.Row="4" <TextBlock Grid.Row="4"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
FontWeight="Bold" FontWeight="Bold"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="5" <ProgressBar Grid.Row="5"
Minimum="{Binding ProgressMinimum}" Minimum="{Binding ProgressMinimum, Mode=OneWay}"
Maximum="{Binding ProgressMaximum}" Maximum="{Binding ProgressMaximum, Mode=OneWay}"
Value="{Binding ProgressValue}" Value="{Binding ProgressValue, Mode=OneWay}"
IsIndeterminate="{Binding ProgressIsIndeterminate}" IsIndeterminate="{Binding ProgressIsIndeterminate, Mode=OneWay}"
IsVisible="{Binding ProgressVisible}" /> IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
<StackPanel Grid.Row="6" <StackPanel Grid.Row="6"
IsVisible="{Binding Progress2Visible}"> IsVisible="{Binding Progress2Visible, Mode=OneWay}">
<TextBlock Text="{Binding Status2Message}" /> <TextBlock Text="{Binding Status2Message, Mode=OneWay}" />
<ProgressBar Minimum="{Binding Progress2Minimum}" <ProgressBar Minimum="{Binding Progress2Minimum, Mode=OneWay}"
Maximum="{Binding Progress2Maximum}" Maximum="{Binding Progress2Maximum, Mode=OneWay}"
Value="{Binding Progress2Value}" Value="{Binding Progress2Value, Mode=OneWay}"
IsIndeterminate="{Binding Progress2IsIndeterminate}" /> IsIndeterminate="{Binding Progress2IsIndeterminate, Mode=OneWay}" />
</StackPanel> </StackPanel>
<DataGrid Grid.Row="7" <DataGrid Grid.Row="7"
ItemsSource="{Binding ImportResults}" ItemsSource="{Binding ImportResults, Mode=OneWay}"
HorizontalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"
IsVisible="{Binding IsImporting}"> IsVisible="{Binding IsImporting, Mode=OneWay}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Filename}" <DataGridTextColumn Binding="{Binding Filename, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.ResultFilenameLabel}" /> <TextBlock Text="{x:Static resources:Localization.ResultFilenameLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Status}" <DataGridTextColumn Binding="{Binding Status, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
@@ -119,14 +119,14 @@
HorizontalAlignment="Right"> HorizontalAlignment="Right">
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanClose}" IsEnabled="{Binding CanClose, Mode=OneWay}"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanStart}" IsEnabled="{Binding CanStart, Mode=OneWay}"
Command="{Binding StartCommand}"> Command="{Binding StartCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.StartLabel}" /> <TextBlock Text="{x:Static resources:Localization.StartLabel}" />
</Button> </Button>
</StackPanel> </StackPanel>

View File

@@ -17,59 +17,59 @@
<Menu DockPanel.Dock="Top"> <Menu DockPanel.Dock="Top">
<MenuItem Header="{x:Static resources:Localization.FileMenuText}"> <MenuItem Header="{x:Static resources:Localization.FileMenuText}">
<MenuItem Header="{x:Static resources:Localization.FileMenuImportDatFileText}" <MenuItem Header="{x:Static resources:Localization.FileMenuImportDatFileText}"
Command="{Binding ImportDatCommand}" /> Command="{Binding ImportDatCommand, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.FileMenuImportDatFolderText}" <MenuItem Header="{x:Static resources:Localization.FileMenuImportDatFolderText}"
Command="{Binding ImportDatFolderCommand}" /> Command="{Binding ImportDatFolderCommand, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.FileMenuSettingsText}" <MenuItem Header="{x:Static resources:Localization.FileMenuSettingsText}"
IsVisible="{Binding !NativeMenuSupported}" IsVisible="{Binding !NativeMenuSupported, Mode=OneWay}"
Command="{Binding SettingsCommand}" /> Command="{Binding SettingsCommand, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.FileMenuExitText}" <MenuItem Header="{x:Static resources:Localization.FileMenuExitText}"
IsVisible="{Binding !NativeMenuSupported}" IsVisible="{Binding !NativeMenuSupported, Mode=OneWay}"
Command="{Binding ExitCommand}" /> Command="{Binding ExitCommand, Mode=OneWay}" />
</MenuItem> </MenuItem>
<MenuItem Header="{x:Static resources:Localization.FilesystemMenuText}"> <MenuItem Header="{x:Static resources:Localization.FilesystemMenuText}">
<MenuItem Header="{x:Static resources:Localization.FilesystemMenuMountText}" <MenuItem Header="{x:Static resources:Localization.FilesystemMenuMountText}"
Command="{Binding MountCommand}" Command="{Binding MountCommand, Mode=OneWay}"
IsEnabled="{Binding Vfs, Converter={x:Static ObjectConverters.IsNull}}" /> IsEnabled="{Binding Vfs, Converter={x:Static ObjectConverters.IsNull}, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.FilesystemMenuUmountText}" <MenuItem Header="{x:Static resources:Localization.FilesystemMenuUmountText}"
Command="{Binding UmountCommand}" Command="{Binding UmountCommand, Mode=OneWay}"
IsEnabled="{Binding Vfs, Converter={x:Static ObjectConverters.IsNotNull}}" /> IsEnabled="{Binding Vfs, Converter={x:Static ObjectConverters.IsNotNull}, Mode=OneWay}" />
<Separator /> <Separator />
</MenuItem> </MenuItem>
<MenuItem Header="{x:Static resources:Localization.RomsMenuText}"> <MenuItem Header="{x:Static resources:Localization.RomsMenuText}">
<MenuItem Header="{x:Static resources:Localization.RomsMenuImportText}" <MenuItem Header="{x:Static resources:Localization.RomsMenuImportText}"
Command="{Binding ImportRomFolderCommand}" /> Command="{Binding ImportRomFolderCommand, Mode=OneWay}" />
<Separator /> <Separator />
</MenuItem> </MenuItem>
<MenuItem Header="{x:Static resources:Localization.RomSetsMenuText}" <MenuItem Header="{x:Static resources:Localization.RomSetsMenuText}"
IsEnabled="{Binding SelectedRomSet, Converter={x:Static ObjectConverters.IsNotNull}}"> IsEnabled="{Binding SelectedRomSet, Converter={x:Static ObjectConverters.IsNotNull}, Mode=OneWay}">
<MenuItem Header="{x:Static resources:Localization.RomSetsMenuSaveRomsText}" <MenuItem Header="{x:Static resources:Localization.RomSetsMenuSaveRomsText}"
Command="{Binding ExportRomsCommand}" /> Command="{Binding ExportRomsCommand, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.RomSetsMenuSaveDatText}" <MenuItem Header="{x:Static resources:Localization.RomSetsMenuSaveDatText}"
Command="{Binding ExportDatCommand}" /> Command="{Binding ExportDatCommand, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.RomSetsMenuEditText}" <MenuItem Header="{x:Static resources:Localization.RomSetsMenuEditText}"
Command="{Binding EditRomSetCommand}" /> Command="{Binding EditRomSetCommand, Mode=OneWay}" />
<Separator /> <Separator />
<MenuItem Header="{x:Static resources:Localization.RomSetsMenuDeleteText}" <MenuItem Header="{x:Static resources:Localization.RomSetsMenuDeleteText}"
Command="{Binding DeleteRomSetCommand}" /> Command="{Binding DeleteRomSetCommand, Mode=OneWay}" />
<Separator /> <Separator />
</MenuItem> </MenuItem>
<MenuItem Header="{x:Static resources:Localization.DatabaseMenuText}"> <MenuItem Header="{x:Static resources:Localization.DatabaseMenuText}">
<MenuItem Header="{x:Static resources:Localization.DatabaseMenuUpdateStatsText}" <MenuItem Header="{x:Static resources:Localization.DatabaseMenuUpdateStatsText}"
Command="{Binding UpdateStatsCommand}" /> Command="{Binding UpdateStatsCommand, Mode=OneWay}" />
<Separator /> <Separator />
</MenuItem> </MenuItem>
<MenuItem Header="{x:Static resources:Localization.HelpMenuText}"> <MenuItem Header="{x:Static resources:Localization.HelpMenuText}">
<MenuItem Header="{x:Static resources:Localization.HelpMenuAboutText}" <MenuItem Header="{x:Static resources:Localization.HelpMenuAboutText}"
Name="AboutMenuItem" Name="AboutMenuItem"
IsVisible="{Binding !NativeMenuSupported}" IsVisible="{Binding !NativeMenuSupported, Mode=OneWay}"
Command="{Binding AboutCommand}" /> Command="{Binding AboutCommand, Mode=OneWay}" />
</MenuItem> </MenuItem>
</Menu> </Menu>
<TabControl HorizontalAlignment="Stretch" <TabControl HorizontalAlignment="Stretch"
@@ -78,104 +78,104 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{x:Static resources:Localization.RomSets}" /> <TextBlock Text="{x:Static resources:Localization.RomSets}" />
</TabItem.Header> </TabItem.Header>
<DataGrid ItemsSource="{Binding RomSets}" <DataGrid ItemsSource="{Binding RomSets, Mode=OneWay}"
HorizontalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"
SelectedItem="{Binding SelectedRomSet, Mode=TwoWay}" SelectedItem="{Binding SelectedRomSet, Mode=TwoWay}"
CanUserSortColumns="True" CanUserSortColumns="True"
CanUserResizeColumns="True"> CanUserResizeColumns="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" <DataGridTextColumn Binding="{Binding Name, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetNameLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetNameLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Version}" <DataGridTextColumn Binding="{Binding Version, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetVersionLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetVersionLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Author}" <DataGridTextColumn Binding="{Binding Author, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetAuthorLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetAuthorLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Category}" <DataGridTextColumn Binding="{Binding Category, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetCategoryLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetCategoryLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Date}" <DataGridTextColumn Binding="{Binding Date, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetDateLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetDateLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Description}" <DataGridTextColumn Binding="{Binding Description, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetDescriptionLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetDescriptionLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Comment}" <DataGridTextColumn Binding="{Binding Comment, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetCommentLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetCommentLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Homepage}" <DataGridTextColumn Binding="{Binding Homepage, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.HomepageLabel}" /> <TextBlock Text="{x:Static resources:Localization.HomepageLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding TotalMachines}" <DataGridTextColumn Binding="{Binding TotalMachines, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetTotalMachinesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetTotalMachinesLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding CompleteMachines}" <DataGridTextColumn Binding="{Binding CompleteMachines, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetCompleteMachinesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetCompleteMachinesLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding IncompleteMachines}" <DataGridTextColumn Binding="{Binding IncompleteMachines, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetIncompleteMachinesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetIncompleteMachinesLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding TotalRoms}" <DataGridTextColumn Binding="{Binding TotalRoms, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetTotalRomsLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetTotalRomsLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding HaveRoms}" <DataGridTextColumn Binding="{Binding HaveRoms, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetHaveRomsLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetHaveRomsLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding MissRoms}" <DataGridTextColumn Binding="{Binding MissRoms, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>

View File

@@ -46,7 +46,7 @@
<Border Padding="15"> <Border Padding="15">
<Grid RowDefinitions="Auto,auto"> <Grid RowDefinitions="Auto,auto">
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="1" <ProgressBar Grid.Row="1"
IsIndeterminate="True" IsIndeterminate="True"

View File

@@ -55,13 +55,13 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding DatabasePath}" Text="{Binding DatabasePath, Mode=TwoWay}"
IsReadOnly="True" IsReadOnly="True"
Padding="5" /> Padding="5" />
<Button Grid.Column="2" <Button Grid.Column="2"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding DatabaseCommand}" Command="{Binding DatabaseCommand, Mode=OneWay}"
Padding="5"> Padding="5">
<TextBlock Text="{x:Static resources:Localization.ChooseLabel}" /> <TextBlock Text="{x:Static resources:Localization.ChooseLabel}" />
</Button> </Button>
@@ -77,13 +77,13 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding RepositoryPath}" Text="{Binding RepositoryPath, Mode=TwoWay}"
IsReadOnly="True" IsReadOnly="True"
Padding="5" /> Padding="5" />
<Button Grid.Column="2" <Button Grid.Column="2"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding RepositoryCommand}" Command="{Binding RepositoryCommand, Mode=OneWay}"
Padding="5"> Padding="5">
<TextBlock Text="{x:Static resources:Localization.ChooseLabel}" /> <TextBlock Text="{x:Static resources:Localization.ChooseLabel}" />
</Button> </Button>
@@ -99,13 +99,13 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding TemporaryPath}" Text="{Binding TemporaryPath, Mode=TwoWay}"
IsReadOnly="True" IsReadOnly="True"
Padding="5" /> Padding="5" />
<Button Grid.Column="2" <Button Grid.Column="2"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding TemporaryCommand}" Command="{Binding TemporaryCommand, Mode=OneWay}"
Padding="5"> Padding="5">
<TextBlock Text="{x:Static resources:Localization.ChooseLabel}" /> <TextBlock Text="{x:Static resources:Localization.ChooseLabel}" />
</Button> </Button>
@@ -121,13 +121,13 @@
<TextBox Grid.Column="1" <TextBox Grid.Column="1"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding UnArPath}" Text="{Binding UnArPath, Mode=TwoWay}"
IsReadOnly="True" IsReadOnly="True"
Padding="5" /> Padding="5" />
<Button Grid.Column="2" <Button Grid.Column="2"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding UnArCommand}" Command="{Binding UnArCommand, Mode=OneWay}"
Padding="5"> Padding="5">
<TextBlock Text="{x:Static resources:Localization.ChooseLabel}" /> <TextBlock Text="{x:Static resources:Localization.ChooseLabel}" />
</Button> </Button>
@@ -135,19 +135,19 @@
<TextBlock Grid.Row="4" <TextBlock Grid.Row="4"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Text="{Binding UnArVersion}" Text="{Binding UnArVersion, Mode=OneWay}"
FontWeight="Bold" /> FontWeight="Bold" />
<StackPanel Grid.Row="5" <StackPanel Grid.Row="5"
Orientation="Horizontal" Orientation="Horizontal"
HorizontalAlignment="Right"> HorizontalAlignment="Right">
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding SaveCommand}"> Command="{Binding SaveCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.SaveLabel}" /> <TextBlock Text="{x:Static resources:Localization.SaveLabel}" />
</Button> </Button>
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</StackPanel> </StackPanel>

View File

@@ -23,7 +23,7 @@
VerticalAlignment="Top" VerticalAlignment="Top"
Orientation="Vertical" Orientation="Vertical"
Margin="5"> Margin="5">
<TextBlock Text="{Binding LoadingText}" <TextBlock Text="{Binding LoadingText, Mode=OneWay}"
FontWeight="Bold" FontWeight="Bold"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Top" /> VerticalAlignment="Top" />
@@ -31,21 +31,21 @@
Orientation="Horizontal"> Orientation="Horizontal">
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingSettingsOk}"> IsVisible="{Binding LoadingSettingsOk, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-checked.svg" /> <svg:SvgImage Source="/Assets/emblem-checked.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingSettingsError}"> IsVisible="{Binding LoadingSettingsError, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-error.svg" /> <svg:SvgImage Source="/Assets/emblem-error.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingSettingsUnknown}"> IsVisible="{Binding LoadingSettingsUnknown, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-question.svg" /> <svg:SvgImage Source="/Assets/emblem-question.svg" />
</Image.Source> </Image.Source>
@@ -57,21 +57,21 @@
Orientation="Horizontal"> Orientation="Horizontal">
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding CheckingUnArOk}"> IsVisible="{Binding CheckingUnArOk, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-checked.svg" /> <svg:SvgImage Source="/Assets/emblem-checked.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding CheckingUnArError}"> IsVisible="{Binding CheckingUnArError, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-error.svg" /> <svg:SvgImage Source="/Assets/emblem-error.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding CheckingUnArUnknown}"> IsVisible="{Binding CheckingUnArUnknown, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-question.svg" /> <svg:SvgImage Source="/Assets/emblem-question.svg" />
</Image.Source> </Image.Source>
@@ -83,21 +83,21 @@
Orientation="Horizontal"> Orientation="Horizontal">
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingDatabaseOk}"> IsVisible="{Binding LoadingDatabaseOk, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-checked.svg" /> <svg:SvgImage Source="/Assets/emblem-checked.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingDatabaseError}"> IsVisible="{Binding LoadingDatabaseError, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-error.svg" /> <svg:SvgImage Source="/Assets/emblem-error.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingDatabaseUnknown}"> IsVisible="{Binding LoadingDatabaseUnknown, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-question.svg" /> <svg:SvgImage Source="/Assets/emblem-question.svg" />
</Image.Source> </Image.Source>
@@ -109,21 +109,21 @@
Orientation="Horizontal"> Orientation="Horizontal">
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding MigratingDatabaseOk}"> IsVisible="{Binding MigratingDatabaseOk, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-checked.svg" /> <svg:SvgImage Source="/Assets/emblem-checked.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding MigratingDatabaseError}"> IsVisible="{Binding MigratingDatabaseError, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-error.svg" /> <svg:SvgImage Source="/Assets/emblem-error.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding MigratingDatabaseUnknown}"> IsVisible="{Binding MigratingDatabaseUnknown, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-question.svg" /> <svg:SvgImage Source="/Assets/emblem-question.svg" />
</Image.Source> </Image.Source>
@@ -135,21 +135,21 @@
Orientation="Horizontal"> Orientation="Horizontal">
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingRomSetsOk}"> IsVisible="{Binding LoadingRomSetsOk, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-checked.svg" /> <svg:SvgImage Source="/Assets/emblem-checked.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingRomSetsError}"> IsVisible="{Binding LoadingRomSetsError, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-error.svg" /> <svg:SvgImage Source="/Assets/emblem-error.svg" />
</Image.Source> </Image.Source>
</Image> </Image>
<Image MaxWidth="24" <Image MaxWidth="24"
MaxHeight="24" MaxHeight="24"
IsVisible="{Binding LoadingRomSetsUnknown}"> IsVisible="{Binding LoadingRomSetsUnknown, Mode=OneWay}">
<Image.Source> <Image.Source>
<svg:SvgImage Source="/Assets/emblem-question.svg" /> <svg:SvgImage Source="/Assets/emblem-question.svg" />
</Image.Source> </Image.Source>

View File

@@ -44,114 +44,114 @@
<Border Padding="15"> <Border Padding="15">
<Grid RowDefinitions="Auto,Auto,*,Auto"> <Grid RowDefinitions="Auto,Auto,*,Auto">
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="{Binding StatusMessage}" Text="{Binding StatusMessage, Mode=OneWay}"
HorizontalAlignment="Center" /> HorizontalAlignment="Center" />
<ProgressBar Grid.Row="1" <ProgressBar Grid.Row="1"
IsIndeterminate="{Binding IndeterminateProgress}" IsIndeterminate="{Binding IndeterminateProgress, Mode=OneWay}"
Maximum="{Binding MaximumValue}" Maximum="{Binding MaximumValue, Mode=OneWay}"
Minimum="{Binding MinimumValue}" Minimum="{Binding MinimumValue, Mode=OneWay}"
Value="{Binding CurrentValue}" Value="{Binding CurrentValue, Mode=OneWay}"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
IsVisible="{Binding ProgressVisible}" /> IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
<DataGrid Grid.Row="2" <DataGrid Grid.Row="2"
ItemsSource="{Binding RomSets}" ItemsSource="{Binding RomSets, Mode=OneWay}"
HorizontalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"
SelectedItem="{Binding SelectedRomSet, Mode=TwoWay}" SelectedItem="{Binding SelectedRomSet, Mode=TwoWay}"
CanUserSortColumns="True" CanUserSortColumns="True"
CanUserResizeColumns="True"> CanUserResizeColumns="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" <DataGridTextColumn Binding="{Binding Name, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetNameLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetNameLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Version}" <DataGridTextColumn Binding="{Binding Version, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetVersionLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetVersionLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Author}" <DataGridTextColumn Binding="{Binding Author, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetAuthorLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetAuthorLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Category}" <DataGridTextColumn Binding="{Binding Category, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetCategoryLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetCategoryLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Date}" <DataGridTextColumn Binding="{Binding Date, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetDateLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetDateLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Description}" <DataGridTextColumn Binding="{Binding Description, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetDescriptionLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetDescriptionLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Comment}" <DataGridTextColumn Binding="{Binding Comment, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetCommentLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetCommentLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Homepage}" <DataGridTextColumn Binding="{Binding Homepage, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.HomepageLabel}" /> <TextBlock Text="{x:Static resources:Localization.HomepageLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding TotalMachines}" <DataGridTextColumn Binding="{Binding TotalMachines, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetTotalMachinesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetTotalMachinesLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding CompleteMachines}" <DataGridTextColumn Binding="{Binding CompleteMachines, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetCompleteMachinesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetCompleteMachinesLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding IncompleteMachines}" <DataGridTextColumn Binding="{Binding IncompleteMachines, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetIncompleteMachinesLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetIncompleteMachinesLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding TotalRoms}" <DataGridTextColumn Binding="{Binding TotalRoms, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetTotalRomsLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetTotalRomsLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding HaveRoms}" <DataGridTextColumn Binding="{Binding HaveRoms, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
<TextBlock Text="{x:Static resources:Localization.RomSetHaveRomsLabel}" /> <TextBlock Text="{x:Static resources:Localization.RomSetHaveRomsLabel}" />
</DataGridTextColumn.Header> </DataGridTextColumn.Header>
</DataGridTextColumn> </DataGridTextColumn>
<DataGridTextColumn Binding="{Binding MissRoms}" <DataGridTextColumn Binding="{Binding MissRoms, Mode=OneWay}"
Width="Auto" Width="Auto"
IsReadOnly="True"> IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>
@@ -163,8 +163,8 @@
<Button Grid.Row="3" <Button Grid.Row="3"
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
IsEnabled="{Binding CanClose}" IsEnabled="{Binding CanClose, Mode=OneWay}"
Command="{Binding CloseCommand}"> Command="{Binding CloseCommand, Mode=OneWay}">
<TextBlock Text="{x:Static resources:Localization.CloseLabel}" /> <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
</Button> </Button>
</Grid> </Grid>