179 lines
9.1 KiB
XML
179 lines
9.1 KiB
XML
<SettingsExpander
|
|
x:Class="Wallet.Avalonia.DropdownEntryCollectionView"
|
|
xmlns="https://github.com/avaloniaui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:vm="using:Wallet"
|
|
x:DataType="vm:DropdownEntryCollectionViewModel"
|
|
Header="{Binding Key}"
|
|
IsExpanded="False">
|
|
<SettingsExpander.Resources>
|
|
<ResourceDictionary>
|
|
<ResourceDictionary.ThemeDictionaries>
|
|
<ResourceDictionary x:Key="Light">
|
|
<StaticResource x:Key="ComboBoxBorderBrush" ResourceKey="ControlStrokeColorDefaultBrush" />
|
|
<StaticResource x:Key="ComboBoxBorderBrushPointerOver" ResourceKey="ControlStrokeColorDefaultBrush" />
|
|
</ResourceDictionary>
|
|
<ResourceDictionary x:Key="Dark">
|
|
<StaticResource x:Key="ComboBoxBorderBrush" ResourceKey="SubtleFillColorTransparentBrush" />
|
|
<StaticResource x:Key="ComboBoxBorderBrushPointerOver" ResourceKey="SubtleFillColorTransparentBrush" />
|
|
</ResourceDictionary>
|
|
</ResourceDictionary.ThemeDictionaries>
|
|
</ResourceDictionary>
|
|
<Thickness x:Key="ButtonMargin">0,0,12,0</Thickness>
|
|
<Thickness x:Key="ButtonPadding">0</Thickness>
|
|
<x:Double x:Key="ButtonMinWidth">32</x:Double>
|
|
<x:Double x:Key="ButtonMinHeight">32</x:Double>
|
|
<Thickness x:Key="TextControlMargin">0</Thickness>
|
|
<Thickness x:Key="TextControlPadding">10,5,6,6</Thickness>
|
|
<Thickness x:Key="TextControlCompactPadding">0</Thickness>
|
|
<Thickness x:Key="TextControlCompactMargin">0</Thickness>
|
|
<Thickness x:Key="ComboBoxPadding">10,6,6,5</Thickness>
|
|
</SettingsExpander.Resources>
|
|
<SettingsExpander.Styles>
|
|
<Style Selector="SettingsExpander.Write">
|
|
<Style Selector="^ /template/ SettingsExpanderItem#ContentHost">
|
|
<Style Selector="^ /template/ ContentPresenter#FooterPresenter">
|
|
<Setter Property="MinWidth" Value="{Binding Width}" />
|
|
</Style>
|
|
<Style Selector="^:footerBottom /template/ ContentPresenter#FooterPresenter">
|
|
<Setter Property="HorizontalAlignment" Value="Stretch" />
|
|
<Setter Property="MinWidth" Value="0" />
|
|
</Style>
|
|
</Style>
|
|
<Style Selector="^ TextBox">
|
|
<Setter Property="IsVisible" Value="False" />
|
|
<Setter Property="Margin" Value="{StaticResource TextControlMargin}" />
|
|
<Setter Property="Padding" Value="{StaticResource TextControlPadding}" />
|
|
</Style>
|
|
<Style Selector="^ ComboBox">
|
|
<Setter Property="MinWidth" Value="0" />
|
|
<Setter Property="HorizontalAlignment" Value="Stretch" />
|
|
<Setter Property="IsVisible" Value="True" />
|
|
<Setter Property="Height" Value="32" />
|
|
</Style>
|
|
</Style>
|
|
<Style Selector="SettingsExpander.Read">
|
|
<Style Selector="^ /template/ SettingsExpanderItem#ContentHost">
|
|
<Style Selector="^ /template/ ContentPresenter#FooterPresenter">
|
|
<Setter Property="MinWidth" Value="0" />
|
|
</Style>
|
|
<Style Selector="^:footerBottom /template/ ContentPresenter#FooterPresenter">
|
|
<Setter Property="HorizontalAlignment" Value="Stretch" />
|
|
<Setter Property="MinWidth" Value="0" />
|
|
</Style>
|
|
</Style>
|
|
<Style Selector="^ TextBox">
|
|
<Setter Property="MinWidth" Value="0" />
|
|
<Setter Property="IsReadOnly" Value="True" />
|
|
<Setter Property="BorderBrush" Value="Transparent" />
|
|
<Setter Property="Background" Value="Transparent" />
|
|
<Setter Property="IsVisible" Value="True" />
|
|
<Setter Property="Margin" Value="{StaticResource TextControlCompactMargin}" />
|
|
<Setter Property="Padding" Value="{StaticResource TextControlCompactPadding}" />
|
|
<Setter Property="MinHeight" Value="0" />
|
|
<Setter Property="Foreground">
|
|
<Setter.Value>
|
|
<SolidColorBrush Opacity="0.7" Color="{DynamicResource TextFillColorPrimary}" />
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style Selector="^:pointerover">
|
|
<Setter Property="Foreground">
|
|
<Setter.Value>
|
|
<SolidColorBrush Opacity="0.7" Color="{DynamicResource TextFillColorPrimary}" />
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style Selector="^ /template/ Border#PART_BorderElement">
|
|
<Setter Property="BorderBrush" Value="Transparent" />
|
|
<Setter Property="Background" Value="Transparent" />
|
|
</Style>
|
|
</Style>
|
|
<Style Selector="^:focus">
|
|
<Setter Property="Foreground">
|
|
<Setter.Value>
|
|
<SolidColorBrush Opacity="0.7" Color="{DynamicResource TextFillColorPrimary}" />
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style Selector="^ /template/ Border#PART_BorderElement">
|
|
<Setter Property="Background" Value="Transparent" />
|
|
<Setter Property="BorderBrush" Value="Transparent" />
|
|
</Style>
|
|
</Style>
|
|
</Style>
|
|
<Style Selector="^ ComboBox">
|
|
<Setter Property="MinWidth" Value="0" />
|
|
<Setter Property="IsVisible" Value="False" />
|
|
</Style>
|
|
</Style>
|
|
</SettingsExpander.Styles>
|
|
<Interaction.Behaviors>
|
|
<DataTriggerBehavior Binding="{Binding State}" Value="{x:Static vm:ItemState.Read}">
|
|
<AddClassAction ClassName="Read" RemoveIfExists="True" />
|
|
<RemoveClassAction ClassName="Write" />
|
|
</DataTriggerBehavior>
|
|
<DataTriggerBehavior Binding="{Binding State}" Value="{x:Static vm:ItemState.New}">
|
|
<AddClassAction ClassName="Write" RemoveIfExists="True" />
|
|
<RemoveClassAction ClassName="Read" />
|
|
</DataTriggerBehavior>
|
|
<DataTriggerBehavior Binding="{Binding State}" Value="{x:Static vm:ItemState.Write}">
|
|
<AddClassAction ClassName="Write" RemoveIfExists="True" />
|
|
<RemoveClassAction ClassName="Read" />
|
|
</DataTriggerBehavior>
|
|
</Interaction.Behaviors>
|
|
<SettingsExpander.Icon>
|
|
<Button
|
|
Grid.Column="1"
|
|
MinWidth="{StaticResource ButtonMinWidth}"
|
|
MinHeight="{StaticResource ButtonMinHeight}"
|
|
Margin="{StaticResource ButtonMargin}"
|
|
Padding="{StaticResource ButtonPadding}"
|
|
HorizontalContentAlignment="Center"
|
|
VerticalContentAlignment="Center"
|
|
Command="{Binding RemoveCommand}"
|
|
Theme="{StaticResource TransparentButton}">
|
|
<Viewbox Height="20">
|
|
<TextBlock
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center"
|
|
FontFamily="{StaticResource FluentThemeFontFamily}"
|
|
FontSize="16"
|
|
Text="" />
|
|
</Viewbox>
|
|
<Button.Styles>
|
|
<Style Selector="Button.Hide">
|
|
<Setter Property="IsVisible" Value="True" />
|
|
</Style>
|
|
<Style Selector="Button.Show">
|
|
<Setter Property="IsVisible" Value="False" />
|
|
</Style>
|
|
</Button.Styles>
|
|
<Interaction.Behaviors>
|
|
<DataTriggerBehavior Binding="{Binding State}" Value="{x:Static vm:ItemState.Read}">
|
|
<AddClassAction ClassName="Show" RemoveIfExists="True" />
|
|
<RemoveClassAction ClassName="Hide" />
|
|
</DataTriggerBehavior>
|
|
<DataTriggerBehavior Binding="{Binding State}" Value="{x:Static vm:ItemState.New}">
|
|
<AddClassAction ClassName="Hide" RemoveIfExists="True" />
|
|
<RemoveClassAction ClassName="Show" />
|
|
</DataTriggerBehavior>
|
|
<DataTriggerBehavior Binding="{Binding State}" Value="{x:Static vm:ItemState.Write}">
|
|
<AddClassAction ClassName="Hide" RemoveIfExists="True" />
|
|
<RemoveClassAction ClassName="Show" />
|
|
</DataTriggerBehavior>
|
|
</Interaction.Behaviors>
|
|
</Button>
|
|
</SettingsExpander.Icon>
|
|
<SettingsExpander.Action>
|
|
<ItemEntryActionView />
|
|
</SettingsExpander.Action>
|
|
<SettingsExpander.Footer>
|
|
<Grid>
|
|
<ComboBox
|
|
DisplayMemberBinding="{ReflectionBinding Value}"
|
|
ItemsSource="{Binding}"
|
|
SelectedItem="{Binding SelectedItem}"
|
|
SelectedValue="{Binding Value}"
|
|
SelectedValueBinding="{ReflectionBinding Value}" />
|
|
<TextBox Text="{Binding Value}" />
|
|
</Grid>
|
|
</SettingsExpander.Footer>
|
|
</SettingsExpander> |