/
githubmirror
/
Files
Обзор
Документация
Войти
/
githubmirror
/
Files
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/Files.App/Views/Properties/GeneralPage.xaml
777 строк
25 KB
yair100
Feature: Added support for removing album cover (#18611)
19 июн 2026, 00:03
Не верифицирован
19 июн 2026, 00:03
28dfdbc
Код
Авторство
О чём код?
<!-- Copyright (c) Files Community. Licensed under the MIT License. --> <vm:BasePropertiesPage x:Class="Files.App.Views.Properties.GeneralPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:helpers="using:Files.App.Helpers" xmlns:i="using:Microsoft.Xaml.Interactivity" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:toolkitconverters="using:CommunityToolkit.WinUI.Converters" xmlns:uc="using:Files.App.UserControls" xmlns:vm="using:Files.App.ViewModels.Properties" xmlns:wctcontrols="using:CommunityToolkit.WinUI.Controls" Loaded="Properties_Loaded" Tag="General" mc:Ignorable="d"> <vm:BasePropertiesPage.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="ms-appx:///Styles/PropertiesStyles.xaml" /> </ResourceDictionary.MergedDictionaries> <ResourceDictionary.ThemeDictionaries> <ResourceDictionary x:Key="Light"> <SolidColorBrush x:Key="ProgressRingBackgroundThemeBrush" Color="#c3c3c3" /> </ResourceDictionary> <ResourceDictionary x:Key="Dark"> <SolidColorBrush x:Key="ProgressRingBackgroundThemeBrush" Color="#191919" /> </ResourceDictionary> <ResourceDictionary x:Key="HighContrast"> <SolidColorBrush x:Key="ProgressRingBackgroundThemeBrush" Color="#c3c3c3" /> </ResourceDictionary> </ResourceDictionary.ThemeDictionaries> <toolkitconverters:BoolNegationConverter x:Key="BoolNegationConverter" /> <toolkitconverters:StringVisibilityConverter x:Key="StringVisibilityConverter" /> </ResourceDictionary> </vm:BasePropertiesPage.Resources> <ScrollViewer> <StackPanel Padding="12" Spacing="4"> <!-- Item Overview --> <Grid Padding="12" Background="{ThemeResource CardBackgroundFillColorDefaultBrush}" BorderBrush="{ThemeResource CardStrokeColorDefaultBrush}" BorderThickness="1" ColumnSpacing="8" CornerRadius="4" RowSpacing="8"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" MinWidth="100" MaxWidth="140" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <!-- File Icon --> <Grid Grid.Row="0" Grid.Column="0" Width="56" Height="56" Margin="{StaticResource PropertyNameMargin}" HorizontalAlignment="Left" VerticalAlignment="Center" BorderBrush="{ThemeResource CardStrokeColorDefaultBrush}" BorderThickness="1" CornerRadius="4"> <uc:FileIcon x:Name="Icon" Width="48" Height="48" HorizontalAlignment="Center" VerticalAlignment="Center" AutomationProperties.AccessibilityView="Raw" FileIconImageData="{x:Bind ViewModel.IconData, Mode=OneWay}" ItemSize="48" ViewModel="{x:Bind ViewModel}" /> <!-- Edit Album Cover Button --> <Button x:Name="EditAlbumCoverButton" Grid.Row="0" Grid.Column="0" Width="56" Height="56" Padding="0" HorizontalAlignment="Center" VerticalAlignment="Center" x:Load="{x:Bind ViewModel.IsEditAlbumCoverVisible, Mode=OneWay}" AutomationProperties.Name="{helpers:ResourceString Name=MoreOptions}" Background="Transparent" BorderThickness="0" Opacity="0" ToolTipService.ToolTip="{helpers:ResourceString Name=MoreOptions}"> <Button.Resources> <SolidColorBrush x:Key="ButtonBackgroundPointerOver" Color="Transparent" /> </Button.Resources> <Button.Flyout> <MenuFlyout Placement="Bottom"> <MenuFlyoutItem Command="{x:Bind ViewModel.EditAlbumCoverCommand, Mode=OneWay}" Text="{helpers:ResourceString Name=ChangeAlbumCover}"> <MenuFlyoutItem.Icon> <FontIcon Glyph="" /> </MenuFlyoutItem.Icon> </MenuFlyoutItem> <MenuFlyoutItem Command="{x:Bind ViewModel.RemoveAlbumCoverCommand, Mode=OneWay}" Text="{helpers:ResourceString Name=RemoveAlbumCover}"> <MenuFlyoutItem.Icon> <FontIcon Glyph="" /> </MenuFlyoutItem.Icon> </MenuFlyoutItem> </MenuFlyout> </Button.Flyout> <Border Width="32" Height="32" Background="{ThemeResource AcrylicInAppFillColorDefaultBrush}" CornerRadius="30"> <FontIcon FontSize="12" Foreground="{ThemeResource TextFillColorPrimary}" Glyph="" /> </Border> <i:Interaction.Behaviors> <i:EventTriggerBehavior EventName="PointerEntered"> <i:ChangePropertyAction PropertyName="Opacity" Value="1.0" /> </i:EventTriggerBehavior> <i:EventTriggerBehavior EventName="PointerExited"> <i:ChangePropertyAction PropertyName="Opacity" Value="0" /> </i:EventTriggerBehavior> </i:Interaction.Behaviors> </Button> </Grid> <!-- Name & Folder/File Count --> <StackPanel Grid.Row="0" Grid.Column="1" HorizontalAlignment="Stretch" VerticalAlignment="Center" Spacing="8"> <TextBox x:Name="ItemFileName" x:Load="{x:Bind ViewModel.ItemNameVisibility, Mode=OneWay}" GettingFocus="ItemFileName_GettingFocus" LosingFocus="ItemFileName_LosingFocus" PlaceholderText="{helpers:ResourceString Name=PropertyItemName}" Text="{x:Bind ViewModel.ItemName, Mode=TwoWay}" /> <TextBlock x:Name="itemFilesAndFoldersCountValueTop" x:Load="{x:Bind ViewModel.FilesAndFoldersCountVisibility, Mode=OneWay}" Text="{x:Bind ViewModel.FilesAndFoldersCountString, Mode=OneWay}" /> </StackPanel> <!-- Type --> <TextBlock x:Name="ItemType" Grid.Row="1" Grid.Column="0" Margin="4,0,0,0" x:Load="{x:Bind ViewModel.ItemTypeVisibility, Mode=OneWay}" FontWeight="SemiBold" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=ItemType}" /> <TextBlock x:Name="itemTypeValue" Grid.Row="1" Grid.Column="1" x:Load="{x:Bind ViewModel.ItemTypeVisibility, Mode=OneWay}" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.ItemType, Mode=OneWay}" /> <!-- File System --> <TextBlock x:Name="FileSystem" Grid.Row="2" Grid.Column="0" Margin="4,0,0,0" x:Load="{x:Bind ViewModel.DriveFileSystemVisibility, Mode=OneWay}" FontWeight="SemiBold" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=PropertiesDriveFileSystem/Text}" /> <TextBlock x:Name="DriveFileSystemValue" Grid.Row="2" Grid.Column="1" x:Load="{x:Bind ViewModel.DriveFileSystemVisibility, Mode=OneWay}" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.DriveFileSystem, Mode=OneWay}" /> </Grid> <!-- Item Details --> <Expander x:Name="ItemDetails" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" x:Load="{x:Bind ViewModel.ItemLocationVisibility, Mode=OneWay}" Header="{helpers:ResourceString Name=MoreDetails}" IsExpanded="True"> <Expander.Content> <Grid HorizontalAlignment="Stretch" ColumnSpacing="8" RowSpacing="8"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" MinWidth="100" MaxWidth="140" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <!-- Item Location --> <TextBlock Grid.Row="0" Grid.Column="0" HorizontalAlignment="Left" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=Location}" Visibility="{x:Bind ViewModel.ItemLocationVisibility, Mode=OneWay}" /> <TextBlock x:Name="itemLocationValue" Grid.Row="0" Grid.Column="1" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.ItemLocation, Mode=OneWay}" TextWrapping="Wrap" Visibility="{x:Bind ViewModel.ItemLocationVisibility, Mode=OneWay}" /> <!-- Item Size --> <TextBlock Grid.Row="1" Grid.Column="0" HorizontalAlignment="Left" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=SizeLabel}" Visibility="{x:Bind ViewModel.ItemSizeVisibility, Mode=OneWay}" /> <Grid Grid.Row="1" Grid.Column="1" Style="{StaticResource PropertyValueGrid}" Visibility="{x:Bind ViewModel.ItemSizeVisibility, Mode=OneWay}"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" MinWidth="100" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <TextBlock x:Name="itemSizeValue" Grid.Column="0" IsTextSelectionEnabled="True" Text="{x:Bind ViewModel.ItemSize, Mode=OneWay}" /> <ProgressBar x:Name="ItemSizeProgress" Grid.Column="1" Width="100" HorizontalAlignment="Left" IsIndeterminate="True" Visibility="{x:Bind ViewModel.ItemSizeProgressVisibility, Mode=OneWay}" /> </Grid> <!-- Item Size on disk --> <TextBlock Grid.Row="2" Grid.Column="0" HorizontalAlignment="Left" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=SizeOnDiskLabel}" Visibility="{x:Bind ViewModel.ItemSizeOnDisk, Mode=OneWay, Converter={StaticResource StringVisibilityConverter}}" /> <Grid Grid.Row="2" Grid.Column="1" Style="{StaticResource PropertyValueGrid}" Visibility="{x:Bind ViewModel.ItemSizeOnDisk, Mode=OneWay, Converter={StaticResource StringVisibilityConverter}}"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" MinWidth="100" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <TextBlock x:Name="itemSizeOnDiskValue" Grid.Column="0" IsTextSelectionEnabled="True" Text="{x:Bind ViewModel.ItemSizeOnDisk, Mode=OneWay}" /> <ProgressBar x:Name="ItemSizeOnDiskProgress" Grid.Column="1" Width="100" HorizontalAlignment="Left" IsIndeterminate="True" Visibility="{x:Bind ViewModel.ItemSizeOnDiskProgressVisibility, Mode=OneWay}" /> </Grid> <!-- Uncompressed Item Size --> <TextBlock Grid.Row="3" Grid.Column="0" HorizontalAlignment="Left" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=UncompressedSize}" Visibility="{x:Bind ViewModel.IsUncompressedItemSizeVisibile, Mode=OneWay}" /> <TextBlock x:Name="UncompresseditemSizeValue" Grid.Row="3" Grid.Column="1" IsTextSelectionEnabled="True" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.UncompressedItemSize, Mode=OneWay}" Visibility="{x:Bind ViewModel.IsUncompressedItemSizeVisibile, Mode=OneWay}" /> <!-- (Divider) --> <Border Grid.Row="4" Grid.Column="0" Grid.ColumnSpan="2" Height="1" Margin="-16,0" Background="{ThemeResource DividerStrokeColorDefaultBrush}" /> <!-- Date Created --> <TextBlock Grid.Row="5" Grid.Column="0" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=PropertiesCreated/Text}" Visibility="{x:Bind ViewModel.ItemCreatedTimestampVisibility, Mode=OneWay}" /> <TextBlock x:Name="itemCreatedTimestampValue" Grid.Row="5" Grid.Column="1" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.ItemCreatedTimestamp, Mode=OneWay}" Visibility="{x:Bind ViewModel.ItemCreatedTimestampVisibility, Mode=OneWay}" /> <!-- Date Modified --> <TextBlock Grid.Row="6" Grid.Column="0" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=PropertiesModified/Text}" Visibility="{x:Bind ViewModel.ItemModifiedTimestampVisibility, Mode=OneWay}" /> <TextBlock x:Name="itemModifiedTimestampValue" Grid.Row="6" Grid.Column="1" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.ItemModifiedTimestamp, Mode=OneWay}" Visibility="{x:Bind ViewModel.ItemModifiedTimestampVisibility, Mode=OneWay}" /> <!-- Date Accessed --> <TextBlock Grid.Row="7" Grid.Column="0" Style="{StaticResource PropertyName}" Text="{helpers:ResourceString Name=Accessed}" Visibility="{x:Bind ViewModel.ItemAccessedTimestampVisibility, Mode=OneWay}" /> <TextBlock x:Name="itemAccessedTimestampValue" Grid.Row="7" Grid.Column="1" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.ItemAccessedTimestamp, Mode=OneWay}" Visibility="{x:Bind ViewModel.ItemAccessedTimestampVisibility, Mode=OneWay}" /> </Grid> </Expander.Content> </Expander> <!-- Disk Details --> <Grid x:Name="DiskDetailsGrid" Padding="12" HorizontalAlignment="Stretch" x:Load="{x:Bind ViewModel.DriveCapacityVisibility, Mode=OneWay}" Background="{ThemeResource CardBackgroundFillColorDefaultBrush}" BorderBrush="{ThemeResource CardStrokeColorDefaultBrush}" BorderThickness="1" ColumnSpacing="8" CornerRadius="4" RowSpacing="8"> <Grid.ColumnDefinitions> <ColumnDefinition Width="72" /> <ColumnDefinition Width="Auto" MinWidth="100" MaxWidth="140" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <!-- Space Used Progress --> <ProgressRing x:Name="SpaceUserProgressRing" Grid.Row="0" Grid.RowSpan="3" Grid.Column="0" Width="60" Height="60" HorizontalAlignment="Left" x:Load="{x:Bind ViewModel.DriveCapacityVisibility, Mode=OneWay}" Background="{ThemeResource ProgressRingBackgroundThemeBrush}" IsIndeterminate="False" Value="{x:Bind ViewModel.DrivePercentageValue, Mode=OneWay}"> <ProgressRing.Template> <ControlTemplate TargetType="ProgressRing"> <Grid x:Name="LayoutRoot" Background="Transparent"> <Grid.Resources> <toolkitconverters:StringFormatConverter x:Key="StringFormatConverter" /> </Grid.Resources> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center"> <TextBlock Margin="0" FontWeight="SemiBold" Text="{Binding Value, RelativeSource={RelativeSource Mode=TemplatedParent}, Converter={StaticResource StringFormatConverter}, ConverterParameter='{}{0:0}%', Mode=OneWay}" TextAlignment="Center" /> </StackPanel> <!-- AnimatedVisualPlayer for Lottie --> <AnimatedVisualPlayer x:Name="LottiePlayer" AutoPlay="false" Opacity="1" Stretch="fill" /> <VisualStateManager.VisualStateGroups> <VisualStateGroup x:Name="CommonStates"> <VisualState x:Name="Inactive"> <VisualState.Setters> <Setter Target="LayoutRoot.Opacity" Value="0" /> </VisualState.Setters> </VisualState> <VisualState x:Name="DeterminateActive" /> <VisualState x:Name="Active" /> </VisualStateGroup> </VisualStateManager.VisualStateGroups> </Grid> </ControlTemplate> </ProgressRing.Template> </ProgressRing> <!-- Disk Used Space --> <StackPanel x:Name="DriveUsedSpaceStackPanel" Grid.Row="0" Grid.Column="1" x:Load="{x:Bind ViewModel.DriveUsedSpaceVisibility, Mode=OneWay}" Orientation="Horizontal"> <Rectangle Width="16" Height="16" Margin="0,0,12,0" Fill="{Binding Foreground, ElementName=SpaceUserProgressRing}" RadiusX="2" RadiusY="2" Stroke="{ThemeResource TextControlElevationBorderBrush}" /> <TextBlock VerticalAlignment="Center" FontWeight="SemiBold" Text="{helpers:ResourceString Name=PropertiesDriveUsedSpace/Text}" /> </StackPanel> <TextBlock x:Name="driveUsedSpaceValue" Grid.Row="0" Grid.Column="2" x:Load="{x:Bind ViewModel.DriveUsedSpaceVisibility, Mode=OneWay}" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.DriveUsedSpace, Mode=OneWay}" /> <Button Grid.Row="0" Grid.Column="3" Padding="8,6" AutomationProperties.Name="{helpers:ResourceString Name=Bytes}" Background="Transparent" BorderBrush="Transparent" ToolTipService.ToolTip="{helpers:ResourceString Name=Bytes}"> <FontIcon FontSize="16" Glyph="" /> <Button.Flyout> <Flyout> <TextBlock IsTextSelectionEnabled="True" Text="{x:Bind ViewModel.DriveUsedSpaceLongSize, Mode=OneWay}" /> </Flyout> </Button.Flyout> </Button> <!-- Disk Free Space --> <StackPanel x:Name="DiskSpaceStackPanel" Grid.Row="1" Grid.Column="1" x:Load="{x:Bind ViewModel.DriveFreeSpaceVisibility, Mode=OneWay}" Orientation="Horizontal"> <Rectangle Width="16" Height="16" Margin="0,0,12,0" Fill="{ThemeResource ProgressRingBackgroundThemeBrush}" RadiusX="2" RadiusY="2" Stroke="{ThemeResource TextControlElevationBorderBrush}" /> <TextBlock VerticalAlignment="Center" FontWeight="SemiBold" Text="{helpers:ResourceString Name=PropertiesDriveFreeSpace/Text}" /> </StackPanel> <TextBlock x:Name="driveFreeSpaceValue" Grid.Row="1" Grid.Column="2" x:Load="{x:Bind ViewModel.DriveFreeSpaceVisibility, Mode=OneWay}" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.DriveFreeSpace, Mode=OneWay}" /> <Button Grid.Row="1" Grid.Column="3" Padding="8,6" AutomationProperties.Name="{helpers:ResourceString Name=Bytes}" Background="Transparent" BorderBrush="Transparent" ToolTipService.ToolTip="{helpers:ResourceString Name=Bytes}"> <FontIcon FontSize="16" Glyph="" /> <Button.Flyout> <Flyout> <TextBlock IsTextSelectionEnabled="True" Text="{x:Bind ViewModel.DriveFreeSpaceLongSize, Mode=OneWay}" /> </Flyout> </Button.Flyout> </Button> <!-- Drive capacity --> <TextBlock x:Name="PropertiesDriveCapacity" Grid.Row="2" Grid.Column="1" Padding="28,0,0,0" VerticalAlignment="Center" x:Load="{x:Bind ViewModel.DriveCapacityVisibility, Mode=OneWay}" FontWeight="SemiBold" Text="{helpers:ResourceString Name=PropertiesDriveCapacity/Text}" /> <TextBlock x:Name="DriveCapacityValue" Grid.Row="2" Grid.Column="2" x:Load="{x:Bind ViewModel.DriveCapacityVisibility, Mode=OneWay}" Style="{StaticResource PropertyValueTextBlock}" Text="{x:Bind ViewModel.DriveCapacity, Mode=OneWay}" /> <Button Grid.Row="2" Grid.Column="3" Padding="8,6" AutomationProperties.Name="{helpers:ResourceString Name=Bytes}" Background="Transparent" BorderBrush="Transparent" ToolTipService.ToolTip="{helpers:ResourceString Name=Bytes}"> <FontIcon FontSize="16" Glyph="" /> <Button.Flyout> <Flyout> <TextBlock IsTextSelectionEnabled="True" Text="{x:Bind ViewModel.DriveCapacityLongSize, Mode=OneWay}" /> </Flyout> </Button.Flyout> </Button> </Grid> <!-- Disk Cleanup --> <wctcontrols:SettingsCard x:Name="CleanupDriveBlockControl" x:Load="{x:Bind ViewModel.CleanupVisibility, Mode=OneWay}" Command="{x:Bind ViewModel.CleanupDriveCommand}" Header="{helpers:ResourceString Name=CleanupDrive}" IsClickEnabled="True"> <wctcontrols:SettingsCard.ActionIcon> <FontIcon Glyph="" /> </wctcontrols:SettingsCard.ActionIcon> </wctcontrols:SettingsCard> <!-- Format Disk --> <wctcontrols:SettingsCard x:Name="FormatDriveBlockControl" x:Load="{x:Bind ViewModel.FormatVisibility, Mode=OneWay}" Command="{x:Bind ViewModel.FormatDriveCommand}" Header="{helpers:ResourceString Name=FormatDrive}" IsClickEnabled="True"> <wctcontrols:SettingsCard.ActionIcon> <FontIcon Glyph="" /> </wctcontrols:SettingsCard.ActionIcon> </wctcontrols:SettingsCard> <!-- Security --> <Expander x:Name="Security" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" x:Load="{x:Bind ViewModel.IsDownloadedFile, Mode=OneWay}" Header="{helpers:ResourceString Name=Security}" IsExpanded="True"> <Expander.Content> <Grid HorizontalAlignment="Stretch" ColumnSpacing="8" RowSpacing="8"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <!-- Unblock Downloaded File --> <TextBlock Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" Text="{helpers:ResourceString Name=UnblockDownloadedFile}" TextWrapping="WrapWholeWords" /> <CheckBox Grid.Row="0" Grid.Column="2" MinWidth="0" HorizontalAlignment="Right" VerticalAlignment="Center" AutomationProperties.Name="{helpers:ResourceString Name=UnblockDownloadedFile}" IsChecked="{x:Bind ViewModel.IsUnblockFileSelected, Mode=TwoWay}" /> </Grid> </Expander.Content> </Expander> <!-- Item Attributes --> <Expander x:Name="ItemAttributes" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" x:Load="{x:Bind ViewModel.ItemAttributesVisibility, Mode=OneWay}" Header="{helpers:ResourceString Name=Attributes}" IsExpanded="False"> <Expander.Content> <Grid HorizontalAlignment="Stretch" ColumnSpacing="8" RowSpacing="8"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <!-- Read Only --> <TextBlock Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" Text="{helpers:ResourceString Name=PropertiesDialogReadOnly/Text}" TextWrapping="WrapWholeWords" /> <CheckBox Grid.Row="0" Grid.Column="2" MinWidth="0" HorizontalAlignment="Right" VerticalAlignment="Center" AutomationProperties.Name="{helpers:ResourceString Name=ReadOnly}" IsChecked="{x:Bind ViewModel.IsReadOnlyEditedValue, Mode=TwoWay}" IsEnabled="{x:Bind ViewModel.IsReadOnlyEnabled, Mode=OneWay}" /> <!-- (Divider) --> <Border Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" Height="1" Margin="-16,0" Background="{ThemeResource DividerStrokeColorDefaultBrush}" /> <!-- Hidden --> <TextBlock Grid.Row="2" Grid.Column="0" VerticalAlignment="Center" Text="{helpers:ResourceString Name=Hidden}" TextWrapping="WrapWholeWords" /> <CheckBox Grid.Row="2" Grid.Column="2" MinWidth="0" HorizontalAlignment="Right" VerticalAlignment="Center" AutomationProperties.Name="{helpers:ResourceString Name=Hidden}" IsChecked="{x:Bind ViewModel.IsHiddenEditedValue, Mode=TwoWay}" /> <!-- (Divider) --> <Border Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="3" Height="1" Margin="-16,0" Background="{ThemeResource DividerStrokeColorDefaultBrush}" /> <!-- Compress Contents --> <TextBlock Grid.Row="4" Grid.Column="0" VerticalAlignment="Center" Text="{helpers:ResourceString Name=CompressContents}" TextWrapping="WrapWholeWords" /> <CheckBox Grid.Row="4" Grid.Column="2" MinWidth="0" HorizontalAlignment="Right" VerticalAlignment="Center" AutomationProperties.Name="{helpers:ResourceString Name=CompressContents}" IsChecked="{x:Bind ViewModel.IsContentCompressedEditedValue, Mode=TwoWay}" IsEnabled="{x:Bind ViewModel.CanCompressContent, Mode=OneWay}" /> </Grid> </Expander.Content> </Expander> </StackPanel> </ScrollViewer> </vm:BasePropertiesPage>