Welcome to mirror list, hosted at ThFree Co, Russian Federation.

CollectionEditorWindow.xaml « Xamarin.PropertyEditing.Windows - github.com/xamarin/Xamarin.PropertyEditing.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 276a80486bade44bc348e269cc70136fbf14aaa8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<local:WindowEx x:Class="Xamarin.PropertyEditing.Windows.CollectionEditorWindow" x:ClassModifier="internal"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
	xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
	xmlns:local="clr-namespace:Xamarin.PropertyEditing.Windows"
	xmlns:prop="clr-namespace:Xamarin.PropertyEditing.Properties;assembly=Xamarin.PropertyEditing"
	mc:Ignorable="d" Background="{DynamicResource DialogBackgroundBrush}" Foreground="{DynamicResource DialogForegroundBrush}"
	MinHeight="300" Height="500" MinWidth="500" Width="700" ShowIcon="False" ShowMaximize="False" ShowMinimize="False" WindowStartupLocation="CenterOwner"
	Title="{Binding Property.Name, StringFormat={x:Static prop:Resources.CollectionEditorTitle},Mode=OneTime}"
	AutomationProperties.Name="{x:Static prop:Resources.AccessibilityCollectionEditor}">

	<local:WindowEx.Resources>
		<ResourceDictionary>
			<ResourceDictionary.MergedDictionaries>
				<ResourceDictionary Source="Themes/Resources.xaml" />
			</ResourceDictionary.MergedDictionaries>
		</ResourceDictionary>
	</local:WindowEx.Resources>
	<Grid Margin="12">
		<Grid.RowDefinitions>
			<RowDefinition Height="Auto" />
			<RowDefinition Height="*" />
			<RowDefinition Height="Auto" />
			<RowDefinition Height="Auto" />
		</Grid.RowDefinitions>
		<Grid.ColumnDefinitions>
			<ColumnDefinition Width="*" />
			<ColumnDefinition Width="*" />
		</Grid.ColumnDefinitions>

		<TextBlock Text="{x:Static prop:Resources.Items}" Grid.Row="0" Grid.Column="0" />
		<TextBlock Text="{x:Static prop:Resources.Properties}" Grid.Row="0" Grid.Column="1" Margin="12,0,0,0" />

		<ListBox ItemsSource="{Binding Targets,Mode=OneTime}" SelectedItem="{Binding SelectedTarget,Mode=TwoWay}" Margin="0,4,0,0" Grid.Column="0" Grid.Row="1" AutomationProperties.Name="{x:Static prop:Resources.AccessibilityCollectionEditorItemList}">
			<ListBox.ItemContainerStyle>
				<Style TargetType="ListBoxItem" BasedOn="{StaticResource {x:Type ListBoxItem}}">
					<Setter Property="AutomationProperties.Name">
						<Setter.Value>
							<MultiBinding StringFormat="{}[{0}] {1}">
								<Binding Path="Row" />
								<Binding Mode="OneTime" Path="TypeName" />
							</MultiBinding>
						</Setter.Value>
					</Setter>
				</Style>
			</ListBox.ItemContainerStyle>
			<ListBox.ItemTemplate>
				<DataTemplate>
					<TextBlock>
						<TextBlock.Text>
							<MultiBinding StringFormat="{}[{0}] {1}">
								<Binding Path="Row" />
								<Binding Mode="OneTime" Path="TypeName" />
							</MultiBinding>
						</TextBlock.Text>
					</TextBlock>
				</DataTemplate>
			</ListBox.ItemTemplate>
		</ListBox>
		<Grid Grid.Row="2" Margin="0,12,0,0">
			<Grid.ColumnDefinitions>
				<ColumnDefinition Width="Auto" />
				<ColumnDefinition Width="*" />
				<ColumnDefinition Width="Auto" />
			</Grid.ColumnDefinitions>

			<StackPanel Orientation="Horizontal" Grid.Column="0">
				<Button Command="{Binding RemoveTargetCommand,Mode=OneTime}" ToolTip="{x:Static prop:Resources.RemoveItem}" AutomationProperties.Name="{x:Static prop:Resources.RemoveItem}" MinWidth="29" FontFamily="Segoe UI Symbol" Content="❌" />
				<Button Command="{Binding MoveUpCommand,Mode=OneTime}" ToolTip="{x:Static prop:Resources.MoveItemUp}" AutomationProperties.Name="{x:Static prop:Resources.MoveItemUp}" MinWidth="29" Margin="4,0,0,0" FontFamily="Segoe UI Symbol" Content="⭡" />
				<Button Command="{Binding MoveDownCommand,Mode=OneTime}" ToolTip="{x:Static prop:Resources.MoveItemDown}" AutomationProperties.Name="{x:Static prop:Resources.MoveItemDown}" MinWidth="29" Margin="4,0,0,0" FontFamily="Segoe UI Symbol" Content="⭣" />
			</StackPanel>
			<ComboBox Grid.Column="1" DisplayMemberPath="Name" ItemsSource="{Binding SuggestedTypes}" SelectedItem="{Binding SelectedType,Mode=TwoWay}" AutomationProperties.Name="{x:Static prop:Resources.AccessibilityCollectionTypeSelector}" Margin="12,0,0,0">
				<ComboBox.ItemContainerStyle>
					<Style TargetType="ComboBoxItem">
						<Setter Property="AutomationProperties.Name" Value="{Binding Name,Mode=OneTime}" />
					</Style>
				</ComboBox.ItemContainerStyle>
			</ComboBox>
			<Button Grid.Column="2" Command="{Binding AddTargetCommand,Mode=OneTime}" Margin="4,0,0,0" Content="{x:Static prop:Resources.AddCollectionItem}" AutomationProperties.Name="{x:Static prop:Resources.AccessibilityCollectionAddButton}"/>
		</Grid>

		<ItemsControl Margin="12,4,0,0" Style="{StaticResource PropertyListStyle}" Background="{DynamicResource ListBackgroundBrush}" Grid.IsSharedSizeScope="True" DataContext="{Binding Panel}" ItemsSource="{Binding ArrangedEditors}" Grid.Column="1" Grid.Row="1" Grid.RowSpan="2" AutomationProperties.Name="{x:Static prop:Resources.AccessibilityCollectionEditorItemProperties}"/>

		<StackPanel Grid.Row="3" Grid.Column="1" HorizontalAlignment="Right" Orientation="Horizontal" Margin="0,4,0,0">
			<Button IsDefault="True" MinWidth="75" MinHeight="23" Content="{x:Static prop:Resources.OK}" Command="{Binding CommitCommand,Mode=OneTime}" Click="OnOkClick" AutomationProperties.Name="{x:Static prop:Resources.OK}"/>
			<Button Margin="5,0,0,0" MinWidth="75" MinHeight="23" IsCancel="True" Content="{x:Static prop:Resources.Cancel}" Command="{Binding CancelCommand,Mode=OneTime}" Click="OnCancelClick" AutomationProperties.Name="{x:Static prop:Resources.Cancel}"/>
		</StackPanel>
	</Grid>
</local:WindowEx>