-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathMainPage.xaml
82 lines (81 loc) · 4.82 KB
/
MainPage.xaml
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
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:dx="http://schemas.devexpress.com/maui"
xmlns:local="clr-namespace:EditFormTemplate"
xmlns:ios="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific;assembly=Microsoft.Maui.Controls"
ios:Page.UseSafeArea="true"
x:Class="EditFormTemplate.MainPage">
<ContentPage.BindingContext>
<local:EmployeeDataViewModel/>
</ContentPage.BindingContext>
<ContentPage.Resources>
<DataTemplate x:Key="CustomEditFormContent">
<ScrollView>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image Source="{Binding Path=Item.Photo}" Grid.Row="0" Grid.Column="0"/>
<dx:DXStackLayout Orientation="Vertical" Padding="50, 20, 0, 0"
Grid.Row="0" Grid.Column="1">
<Label Text="{Binding Path=Item.Name}" VerticalOptions="Start"
FontSize="20" FontAttributes="Bold" />
<dx:DXStackLayout Orientation="Horizontal">
<Label Text="Phone:" FontSize="14" WidthRequest="100"
HorizontalOptions="Start" VerticalOptions="Center" />
<Editor Text="{Binding Path=Item.Phone, Mode=TwoWay}"
FontSize="Small" HorizontalOptions="FillAndExpand"/>
</dx:DXStackLayout>
<dx:DXStackLayout Orientation="Horizontal">
<Label Text="Address:" FontSize="14" WidthRequest="100"
HorizontalOptions="Start" VerticalOptions="Center" />
<Editor Text="{Binding Path=Item.Address, Mode=TwoWay}"
FontSize="Small" HorizontalOptions="FillAndExpand"/>
</dx:DXStackLayout>
</dx:DXStackLayout>
</Grid>
</ScrollView>
</DataTemplate>
</ContentPage.Resources>
<dx:DataGridView x:Name="grid" ItemsSource="{Binding Employees}"
RowDoubleTapCommand="{Binding Source={RelativeSource Mode=Self}, Path=Commands.ShowDetailEditForm}"
DetailEditFormTemplate="{x:StaticResource CustomEditFormContent}">
<dx:DataGridView.Columns>
<dx:ImageColumn FieldName="Photo"
Width="100" VerticalContentAlignment="Center"/>
<dx:TemplateColumn FieldName="Name" Caption="Employee"
IsReadOnly="true" AllowSort="False" MinWidth="200">
<dx:TemplateColumn.DisplayTemplate>
<DataTemplate>
<Grid VerticalOptions="Center" Padding="15, 0, 0, 0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label Text="{Binding Item.Name}" FontAttributes="Bold" FontSize="Medium" Grid.Row="0" />
<Label Text="{Binding Item.Position, StringFormat = 'Job Title: {0}'}"
FontSize="Small" Grid.Row="1"/>
<Label Text="{Binding Item.HireDate, StringFormat = 'Hire Date: {0:d}'}"
FontSize="Small" Grid.Row="2" />
</Grid>
</DataTemplate>
</dx:TemplateColumn.DisplayTemplate>
</dx:TemplateColumn>
<dx:TextColumn FieldName="Phone"
MinWidth="130" VerticalContentAlignment="Center" />
<dx:TextColumn FieldName="Address"
MinWidth="150" VerticalContentAlignment="Center" />
<dx:DateColumn FieldName="BirthDate"
MinWidth="120" DisplayFormat="d" VerticalContentAlignment="Center"/>
<dx:PickerColumn FieldName="Access" Caption="Access Level"
MinWidth="140" VerticalContentAlignment="Center"/>
<dx:CheckBoxColumn FieldName="OnVacation"
MinWidth="130" VerticalContentAlignment="Center"/>
</dx:DataGridView.Columns>
</dx:DataGridView>
</ContentPage>