11
11
<ContentPage .Resources>
12
12
<services : InverseBooleanConverter x : Key =" InverseBooleanConverter" />
13
13
</ContentPage .Resources>
14
-
15
- <ScrollView >
16
14
17
- <VerticalStackLayout >
18
- <Grid
19
- ColumnSpacing =" 10"
20
- Padding =" 10"
21
- Margin =" 10" >
22
-
23
- <Grid .ColumnDefinitions>
24
- <ColumnDefinition Width =" *" />
25
- <ColumnDefinition Width =" *" />
26
- </Grid .ColumnDefinitions>
27
- <Grid .RowDefinitions>
28
- <RowDefinition Height =" *" />
29
- <RowDefinition Height =" *" />
30
- </Grid .RowDefinitions>
31
- <Button
32
- Text =" Start"
33
- Style =" {StaticResource MyBtn}"
34
- Grid.Column=" 0"
35
- Command =" {Binding GetValidIPsCommand}"
36
- IsEnabled =" {Binding IsBusy, Converter={StaticResource InverseBooleanConverter}}"
37
- HeightRequest =" 50"
38
- />
39
-
40
- <Button
41
- Text =" Options"
42
- Style =" {StaticResource MyBtn}"
43
- Grid.Column=" 1"
44
- Command =" {Binding ShowOptionsForSearchIpCommand}"
45
- IsEnabled =" {Binding IsBusy, Converter={StaticResource InverseBooleanConverter}}"
46
- />
47
-
48
- </Grid >
15
+ <Grid RowDefinitions =" *, Auto" >
16
+ <!-- Scrollable Content -->
17
+ <ScrollView Grid.Row=" 0" >
18
+ <VerticalStackLayout >
19
+ <Grid
20
+ ColumnSpacing =" 10"
21
+ Padding =" 10"
22
+ Margin =" 10" >
49
23
24
+ <Grid .ColumnDefinitions>
25
+ <ColumnDefinition Width =" *" />
26
+ <ColumnDefinition Width =" *" />
27
+ </Grid .ColumnDefinitions>
28
+ <Grid .RowDefinitions>
29
+ <RowDefinition Height =" *" />
30
+ <RowDefinition Height =" *" />
31
+ </Grid .RowDefinitions>
32
+ <Button
33
+ Text =" Start"
34
+ Style =" {StaticResource MyBtn}"
35
+ Grid.Column=" 0"
36
+ Command =" {Binding GetValidIPsCommand}"
37
+ IsEnabled =" {Binding IsBusy, Converter={StaticResource InverseBooleanConverter}}"
38
+ HeightRequest =" 50"
39
+ />
50
40
41
+ <Button
42
+ Text =" Options"
43
+ Style =" {StaticResource MyBtn}"
44
+ Grid.Column=" 1"
45
+ Command =" {Binding ShowOptionsForSearchIpCommand}"
46
+ IsEnabled =" {Binding IsBusy, Converter={StaticResource InverseBooleanConverter}}"
47
+ />
48
+ </Grid >
51
49
50
+ <CollectionView ItemsSource =" {Binding ValidIPs}"
51
+ x : Name =" validIPCollectionView"
52
+ HorizontalOptions =" Center"
53
+ SelectionChangedCommand =" {Binding ShowSelectedIPOptionCommand}"
54
+ SelectionChangedCommandParameter =" {Binding Source={x:Reference validIPCollectionView}, Path=SelectedItem}"
55
+ SelectionMode =" Single"
56
+ IsVisible =" {Binding IsBusy, Converter={StaticResource InverseBooleanConverter}}" >
57
+ <CollectionView .ItemTemplate>
58
+ <DataTemplate x : DataType =" model:IPModel" >
59
+ <Grid Padding =" 15" >
60
+ <Grid .ColumnDefinitions>
61
+ <ColumnDefinition Width =" Auto" />
62
+ <ColumnDefinition Width =" *" />
63
+ </Grid .ColumnDefinitions>
64
+ <Grid .RowDefinitions>
65
+ <RowDefinition Height =" Auto" />
66
+ <RowDefinition Height =" Auto" />
67
+ <RowDefinition Height =" Auto" />
68
+ <RowDefinition Height =" Auto" />
69
+ </Grid .RowDefinitions>
70
+ <Label Grid.Row=" 0" Grid.Column=" 0" Text =" ip :" TextColor =" White" />
71
+ <Label Grid.Row=" 0" Grid.Column=" 1" Text =" {Binding IP}" TextColor =" White" />
52
72
53
- <CollectionView ItemsSource =" {Binding ValidIPs}"
54
- x : Name =" validIPCollectionView"
55
- HorizontalOptions =" Center"
56
- SelectionChangedCommand =" {Binding ShowSelectedIPOptionCommand}"
57
- SelectionChangedCommandParameter =" {Binding Source={x:Reference validIPCollectionView}, Path=SelectedItem}"
58
- SelectionMode =" Single"
59
- IsVisible =" {Binding IsBusy, Converter={StaticResource InverseBooleanConverter}}" >
60
- <CollectionView .ItemTemplate>
61
- <DataTemplate x : DataType =" model:IPModel" >
62
- <Grid Padding =" 15" >
63
- <Grid .ColumnDefinitions>
64
- <ColumnDefinition Width =" Auto" />
65
- <ColumnDefinition Width =" *" />
66
- </Grid .ColumnDefinitions>
67
- <Grid .RowDefinitions>
68
- <RowDefinition Height =" Auto" />
69
- <RowDefinition Height =" Auto" />
70
- <RowDefinition Height =" Auto" />
71
- <RowDefinition Height =" Auto" />
72
- </Grid .RowDefinitions>
73
- <Label Grid.Row=" 0" Grid.Column=" 0" Text =" ip :" TextColor =" White" />
74
- <Label Grid.Row=" 0" Grid.Column=" 1" Text =" {Binding IP}" TextColor =" White" />
73
+ <Label Grid.Row=" 1" Grid.Column=" 0" Text =" ping :" TextColor =" White" />
74
+ <Label Grid.Row=" 1" Grid.Column=" 1" Text =" {Binding Ping}" TextColor =" White" />
75
75
76
- <Label Grid.Row=" 1 " Grid.Column=" 0" Text =" ping :" TextColor =" White" />
77
- <Label Grid.Row=" 1 " Grid.Column=" 1" Text =" {Binding Ping }" TextColor =" White" />
76
+ <Label Grid.Row=" 2 " Grid.Column=" 0" Text =" ports :" TextColor =" White" />
77
+ <Label Grid.Row=" 2 " Grid.Column=" 1" Text =" {Binding Ports }" TextColor =" White" />
78
78
79
- <Label Grid.Row=" 2" Grid.Column=" 0" Text =" ports :" TextColor =" White" />
80
- <Label Grid.Row=" 2" Grid.Column=" 1" Text =" {Binding Ports}" TextColor =" White" />
79
+ <Label Grid.Row=" 3" Grid.Column=" 0" Text =" TimeOut :" TextColor =" White" />
80
+ <Label Grid.Row=" 3" Grid.Column=" 1" Text =" {Binding CountOfTimeout}" TextColor =" White" />
81
+ </Grid >
82
+ </DataTemplate >
83
+ </CollectionView .ItemTemplate>
84
+ </CollectionView >
81
85
82
- <Label Grid.Row=" 3" Grid.Column=" 0" Text =" TimeOut :" TextColor =" White" />
83
- <Label Grid.Row=" 3" Grid.Column=" 1" Text =" {Binding CountOfTimeout}" TextColor =" White" />
84
- </Grid >
85
- </DataTemplate >
86
- </CollectionView .ItemTemplate>
87
- </CollectionView >
86
+ <ActivityIndicator IsRunning =" {Binding IsBusy}" IsVisible =" {Binding IsBusy}" />
87
+ </VerticalStackLayout >
88
+ </ScrollView >
88
89
89
- <ActivityIndicator IsRunning =" {Binding IsBusy}" IsVisible =" {Binding IsBusy}" />
90
- </VerticalStackLayout >
91
- </ScrollView >
90
+ <Button
91
+ Grid.Row=" 1"
92
+ Text =" export all ips to clipboard"
93
+ IsVisible =" {Binding ExportBtnVisible}"
94
+ IsEnabled =" {Binding ExportBtnVisible}"
95
+ Command =" {Binding ExportAllIPsToClipboardCommand}"
96
+ HeightRequest =" 50"
97
+ HorizontalOptions =" FillAndExpand"
98
+ VerticalOptions =" End"
99
+ BackgroundColor =" DimGray"
100
+ TextColor =" White" >
101
+
102
+ </Button >
103
+ </Grid >
92
104
93
- </ContentPage >
105
+ </ContentPage >
0 commit comments