maui-linux/Xamarin.Forms.Platform.WPF/WPFResources.xaml

398 строки
14 KiB
XML

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:system="clr-namespace:System;assembly=mscorlib"
xmlns:wpf="clr-namespace:Xamarin.Forms.Platform.WPF">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Xamarin.Forms.Platform.WPF;component/Assets/Default.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- Default Global Color -->
<SolidColorBrush x:Key="WindowBackgroundColor" Color="White" />
<SolidColorBrush x:Key="AccentColor" Color="#3498db" />
<!-- Default Command Bar Color -->
<SolidColorBrush x:Key="CommandBarBackgroundColor" Color="#3498db" />
<SolidColorBrush x:Key="CommandBarTextColor" Color="White" />
<!-- Default Title Bar Color -->
<SolidColorBrush x:Key="DefaultTitleBarBackgroundColor" Color="#3498db" />
<SolidColorBrush x:Key="DefaultTitleBarTextColor" Color="White" />
<!-- Default Tabbed Bar Color -->
<SolidColorBrush x:Key="DefaultTabbedBarBackgroundColor" Color="#3498db" />
<SolidColorBrush x:Key="DefaultTabbedBarTextColor" Color="White" />
<system:Double x:Key="FontSizeSmall">18</system:Double>
<system:Double x:Key="FontSizeNormal">20</system:Double>
<system:Double x:Key="FontSizeMedium">22</system:Double>
<system:Double x:Key="FontSizeMediumLarge">25</system:Double>
<system:Double x:Key="FontSizeLarge">32</system:Double>
<system:Double x:Key="FontSizeExtraLarge">42</system:Double>
<system:Double x:Key="FontSizeExtraExtraLarge">72</system:Double>
<system:Double x:Key="FontSizeHuge">186</system:Double>
<system:Double x:Key="FontSizeBody">14</system:Double>
<system:Double x:Key="FontSizeCaption">12</system:Double>
<system:Double x:Key="FontSizeHeader">46</system:Double>
<system:Double x:Key="FontSizeSubtitle">20</system:Double>
<system:Double x:Key="FontSizeTitle">24</system:Double>
<FontFamily x:Key="FontFamilyNormal">Segoe UI</FontFamily>
<FontFamily x:Key="FontFamilySemiBold">Segoe UI</FontFamily>
<wpf:HeightConverter x:Key="HeightConverter" />
<wpf:ViewToRendererConverter x:Key="ViewToRenderer" />
<wpf:CaseConverter x:Key="LowerConverter" ConvertToUpper="False" />
<wpf:CaseConverter x:Key="UpperConverter" ConvertToUpper="True" />
<wpf:CollapseWhenEmptyConverter x:Key="CollapseWhenEmpty" />
<wpf:ColorConverter x:Key="ColorConverter" />
<wpf:ImageConverter x:Key="ImageConverter" />
<Style x:Key="BaseTextBlockStyle" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe UI"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="FontSize" Value="15"/>
<Setter Property="TextTrimming" Value="None"/>
<Setter Property="TextWrapping" Value="Wrap"/>
<Setter Property="LineStackingStrategy" Value="MaxHeight"/>
</Style>
<Style x:Key="HeaderTextBlockStyle" TargetType="TextBlock"
BasedOn="{StaticResource BaseTextBlockStyle}">
<Setter Property="FontSize" Value="46"/>
<Setter Property="FontWeight" Value="Light"/>
</Style>
<Style x:Key="SubheaderTextBlockStyle" TargetType="TextBlock"
BasedOn="{StaticResource BaseTextBlockStyle}">
<Setter Property="FontSize" Value="34"/>
<Setter Property="FontWeight" Value="Light"/>
</Style>
<Style x:Key="BodyTextBlockStyle" TargetType="TextBlock"
BasedOn="{StaticResource BaseTextBlockStyle}">
<Setter Property="FontWeight" Value="Normal"/>
<Setter Property="FontSize" Value="15"/>
</Style>
<Style x:Key="ListViewItemTextBlockStyle" TargetType="TextBlock"
BasedOn="{StaticResource BodyTextBlockStyle}">
<Setter Property="FontSize" Value="20"/>
</Style>
<Style x:Key="CaptionTextBlockStyle" TargetType="TextBlock"
BasedOn="{StaticResource BaseTextBlockStyle}">
<Setter Property="FontSize" Value="12"/>
<Setter Property="FontWeight" Value="Normal"/>
</Style>
<Style x:Key="ActionSheetList" TargetType="ListView">
<Setter Property="SelectionMode" Value="Single"/>
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="ItemContainerStyle">
<Setter.Value>
<Style TargetType="ListViewItem">
<Setter Property="Margin" Value="10,0,0,0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="Background" Value="Transparent" />
</Style>
</Setter.Value>
</Setter>
<Setter Property="ItemTemplate">
<Setter.Value>
<DataTemplate>
<TextBlock Text="{Binding}"
Margin="5"
HorizontalAlignment="Stretch"
VerticalAlignment="Center"
Style="{StaticResource ListViewItemTextBlockStyle}" />
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ListViewTemplate" TargetType="ListView">
<Setter Property="SelectionMode" Value="Single"/>
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled" />
<Setter Property="ItemContainerStyle">
<Setter.Value>
<Style TargetType="ListViewItem">
<Setter Property="Margin" Value="0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="Height" Value="Auto" />
</Style>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="TableViewTemplate" TargetType="ListView">
<Setter Property="SelectionMode" Value="Single"/>
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="ItemContainerStyle">
<Setter.Value>
<Style TargetType="ListViewItem">
<Setter Property="Margin" Value="5,0,0,0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="Height" Value="Auto" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListViewItem}">
<ContentPresenter />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Setter.Value>
</Setter>
</Style>
<Style
TargetType="{x:Type wpf:FormsTextBox}">
<Setter
Property="Foreground"
Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" />
<Setter
Property="Background"
Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}" />
<Setter
Property="BorderThickness"
Value="1" />
<Setter
Property="Padding"
Value="3" />
<Setter
Property="AllowDrop"
Value="true" />
<Setter
Property="FocusVisualStyle"
Value="{x:Null}" />
<Setter
Property="ScrollViewer.PanningMode"
Value="VerticalFirst" />
<Setter
Property="Stylus.IsFlicksEnabled"
Value="False" />
<Setter
Property="Template">
<Setter.Value>
<ControlTemplate
TargetType="{x:Type wpf:FormsTextBox}">
<Grid>
<Border
x:Name="Border"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}"
CornerRadius="1"
Background="{TemplateBinding Background}">
<Grid>
<ScrollViewer
x:Name="PART_ContentHost"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
</ScrollViewer>
<TextBlock
x:Name="PART_WatermarkHost"
Text="{TemplateBinding PlaceholderText}"
Foreground="{TemplateBinding PlaceholderForegroundBrush}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
IsHitTestVisible="False"
Margin="{TemplateBinding Padding}"
Visibility="Collapsed" />
</Grid>
</Border>
<Border
x:Name="MouseOverVisual"
Opacity="0"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="1" />
<Border
x:Name="FocusVisual"
Opacity="0"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="1" />
</Grid>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition
Property="IsFocused"
Value="False" />
<Condition
Property="Text"
Value="" />
</MultiTrigger.Conditions>
<MultiTrigger.Setters>
<Setter
Property="Visibility"
TargetName="PART_WatermarkHost"
Value="Visible" />
</MultiTrigger.Setters>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition
Property="Text"
Value="" />
</MultiTrigger.Conditions>
<MultiTrigger.Setters>
<Setter
Property="Visibility"
TargetName="PART_WatermarkHost"
Value="Visible" />
</MultiTrigger.Setters>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition
Property="IsFocused"
Value="True" />
</MultiTrigger.Conditions>
<MultiTrigger.Setters>
<Setter
Property="Visibility"
TargetName="PART_WatermarkHost"
Value="Collapsed" />
</MultiTrigger.Setters>
</MultiTrigger>
<Trigger
Property="IsMouseOver"
Value="True">
<Setter
TargetName="MouseOverVisual"
Property="Opacity"
Value="1" />
</Trigger>
<Trigger
Property="IsFocused"
Value="True">
<Setter
TargetName="FocusVisual"
Property="Opacity"
Value="1" />
</Trigger>
<Trigger
Property="IsEnabled"
Value="false">
<Setter
Property="Foreground"
Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<DataTemplate x:Key="CellTemplate">
<wpf:CellControl Cell="{Binding}" Margin="5,0,0,0"
Height="{Binding Cell.RenderHeight,RelativeSource={RelativeSource Mode=Self}, Converter={StaticResource HeightConverter}}" >
</wpf:CellControl>
</DataTemplate>
<DataTemplate x:Key="TableSectionHeader">
<TextBlock Text="{Binding Title, Converter={StaticResource LowerConverter}}" Style="{StaticResource SubheaderTextBlockStyle}"
FontSize="24">
<TextBlock.Foreground>
<MultiBinding Converter="{StaticResource ColorConverter}" ConverterParameter="{x:Static TextBlock.ForegroundProperty}">
<Binding RelativeSource="{RelativeSource Self}"/>
<Binding Path="TextColor"/>
</MultiBinding>
</TextBlock.Foreground>
</TextBlock>
</DataTemplate>
<DataTemplate x:Key="TextCell">
<StackPanel>
<TextBlock
Text="{Binding Text}"
Style="{StaticResource ListViewItemTextBlockStyle}"
Visibility="{Binding Text,RelativeSource={RelativeSource Self}, Converter={StaticResource CollapseWhenEmpty}}">
<TextBlock.Foreground>
<MultiBinding Converter="{StaticResource ColorConverter}" ConverterParameter="{x:Static TextBlock.ForegroundProperty}">
<Binding RelativeSource="{RelativeSource Self}"/>
<Binding Path="TextColor"/>
</MultiBinding>
</TextBlock.Foreground>
</TextBlock>
<TextBlock
Text="{Binding Detail}" Style="{StaticResource CaptionTextBlockStyle}"
Visibility="{Binding Text,RelativeSource={RelativeSource Self}, Converter={StaticResource CollapseWhenEmpty}}">
<TextBlock.Foreground>
<MultiBinding Converter="{StaticResource ColorConverter}" ConverterParameter="{x:Static TextBlock.ForegroundProperty}">
<Binding RelativeSource="{RelativeSource Self}"/>
<Binding Path="DetailColor"/>
</MultiBinding>
</TextBlock.Foreground>
</TextBlock>
</StackPanel>
</DataTemplate>
<DataTemplate x:Key="SwitchCell">
<Grid HorizontalAlignment="Stretch">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding Text}" Style="{StaticResource ListViewItemTextBlockStyle}" VerticalAlignment="Center" />
<CheckBox Grid.Column="1" IsChecked="{Binding On, Mode=TwoWay}" VerticalAlignment="Center" />
</Grid>
</DataTemplate>
<DataTemplate x:Key="ImageCell">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Image Grid.Column="0" Grid.RowSpan="2"
DataContext="{Binding ImageSource, Converter={StaticResource ImageConverter}}" Source="{Binding Value}"
VerticalAlignment="Center" />
<TextBlock Grid.Column="1" Grid.Row="0"
Text="{Binding Text}" Style="{StaticResource ListViewItemTextBlockStyle}"
Visibility="{Binding Text,RelativeSource={RelativeSource Self}, Converter={StaticResource CollapseWhenEmpty}}">
<TextBlock.Foreground>
<MultiBinding Converter="{StaticResource ColorConverter}" ConverterParameter="{x:Static TextBlock.ForegroundProperty}">
<Binding RelativeSource="{RelativeSource Self}"/>
<Binding Path="TextColor"/>
</MultiBinding>
</TextBlock.Foreground>
</TextBlock>
<TextBlock Grid.Column="1" Grid.Row="1"
Text="{Binding Detail}" Style="{StaticResource CaptionTextBlockStyle}"
Visibility="{Binding Text,RelativeSource={RelativeSource Self}, Converter={StaticResource CollapseWhenEmpty}}">
<TextBlock.Foreground>
<MultiBinding Converter="{StaticResource ColorConverter}" ConverterParameter="{x:Static TextBlock.ForegroundProperty}">
<Binding RelativeSource="{RelativeSource Self}"/>
<Binding Path="DetailColor"/>
</MultiBinding>
</TextBlock.Foreground>
</TextBlock>
</Grid>
</DataTemplate>
<DataTemplate x:Key="EntryCell">
<wpf:FormsTextBox Grid.Column="1" Text="{Binding Text, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Center" IsEnabled="{Binding IsEnabled}"/>
</DataTemplate>
<DataTemplate x:Key="ViewCell">
<ContentPresenter Content="{Binding View, Converter={StaticResource ViewToRenderer}}" />
</DataTemplate>
</ResourceDictionary>