SelectFromHoldingView.xaml 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <ContentView xmlns="http://xamarin.com/schemas/2014/forms"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
  4. xmlns:local="clr-namespace:PRS.Mobile;assembly=PRS.Mobile"
  5. xmlns:views="http://xamarin.com/schemas/2020/toolkit"
  6. xmlns:mobile="clr-namespace:InABox.Mobile;assembly=InABox.Mobile.Shared"
  7. x:Class="PRS.Mobile.SelectFromHoldingView"
  8. >
  9. <ContentView.BindingContext>
  10. <local:SelectFromHoldingViewModel x:Name="_viewModel"/>
  11. </ContentView.BindingContext>
  12. <ContentView.Resources>
  13. <mobile:ByteArrayToImageSourceConverter x:Key="ByteArrayToImageSourceConverter"/>
  14. <DataTemplate x:Key="HoldingEditorTemplate" x:DataType="local:SelectFromHoldingAllocation">
  15. <Grid Grid.RowSpacing="0" Margin="5">
  16. <Grid.ColumnDefinitions>
  17. <ColumnDefinition Width="30"/>
  18. <ColumnDefinition Width="*"/>
  19. <ColumnDefinition Width="50"/>
  20. </Grid.ColumnDefinitions>
  21. <mobile:MobileCheckBox
  22. Grid.Column="0"
  23. IsChecked="{Binding Selected, Mode=TwoWay}"
  24. VerticalOptions="Center"
  25. HorizontalOptions="Center"/>
  26. <Label
  27. Grid.Column="1"
  28. VerticalTextAlignment="Center"
  29. HorizontalTextAlignment="Start"
  30. Text="{Binding Description}"
  31. TextColor="{StaticResource Theme.OnBackground}"
  32. FontSize="{StaticResource Theme.Text.Small.Size}"/>
  33. <Label
  34. Grid.Column="2"
  35. VerticalTextAlignment="Center"
  36. HorizontalTextAlignment="Center"
  37. Text="{Binding Quantity, StringFormat=' ({0})'}"
  38. TextColor="{StaticResource Theme.OnBackground}"
  39. FontSize="{StaticResource Theme.Text.Small.Size}"/>
  40. </Grid>
  41. </DataTemplate>
  42. </ContentView.Resources>
  43. <ContentView.Content>
  44. <Grid>
  45. <Grid.ColumnDefinitions>
  46. <ColumnDefinition Width="*"/>
  47. <ColumnDefinition Width="*"/>
  48. </Grid.ColumnDefinitions>
  49. <Grid.RowDefinitions>
  50. <RowDefinition Height="*" />
  51. <RowDefinition Height="Auto" />
  52. <RowDefinition Height="Auto" />
  53. <RowDefinition Height="Auto" />
  54. <RowDefinition Height="Auto" />
  55. <RowDefinition Height="Auto" />
  56. <RowDefinition Height="Auto" />
  57. </Grid.RowDefinitions>
  58. <mobile:MobileCard
  59. Grid.Row="0"
  60. Grid.Column="0"
  61. Grid.ColumnSpan="2">
  62. <Image Source="{Binding Holding.Image, Converter={StaticResource ByteArrayToImageSourceConverter}}"/>
  63. </mobile:MobileCard>
  64. <Label
  65. Grid.Row="1"
  66. Grid.Column="0"
  67. Grid.ColumnSpan="2"
  68. HorizontalTextAlignment="Center"
  69. VerticalTextAlignment="Center"
  70. FontSize="{StaticResource Theme.Text.Small.Size}"
  71. TextColor="{StaticResource Theme.OnBackground}"
  72. Text="{Binding Holding.ProductDisplay, FallbackValue=''}"/>
  73. <StackLayout
  74. Grid.Row="2"
  75. Grid.Column="0"
  76. Grid.ColumnSpan="2"
  77. Orientation="Horizontal"
  78. HorizontalOptions="Center">
  79. <Label
  80. VerticalTextAlignment="Center"
  81. FontSize="{StaticResource Theme.Text.Small.Size}"
  82. TextColor="{StaticResource Theme.OnBackground}"
  83. Text="{Binding Holding.DimensionsUnitSize, FallbackValue=''}"/>
  84. <Label
  85. VerticalTextAlignment="Center"
  86. FontSize="{StaticResource Theme.Text.Small.Size}"
  87. TextColor="{StaticResource Theme.OnBackground}"
  88. Text="{Binding Holding.StyleDescription, FallbackValue=''}"/>
  89. </StackLayout>
  90. <Label
  91. Grid.Row="3"
  92. Grid.Column="0"
  93. Grid.ColumnSpan="2"
  94. HorizontalTextAlignment="Center"
  95. VerticalTextAlignment="Center"
  96. FontSize="{StaticResource Theme.Text.Small.Size}"
  97. TextColor="{StaticResource Theme.OnBackground}"
  98. Text="{Binding Holding.LocationDescription, FallbackValue=''}"/>
  99. <mobile:MobileCard
  100. Grid.Row="4"
  101. Grid.Column="0"
  102. Grid.ColumnSpan="2"
  103. Padding="0">
  104. <StackLayout
  105. Orientation="Vertical"
  106. BindableLayout.ItemsSource="{Binding Allocations}"
  107. BindableLayout.ItemTemplate="{StaticResource HoldingEditorTemplate}"
  108. Spacing="0"/>
  109. </mobile:MobileCard>
  110. <views:DockLayout
  111. Grid.Row="5"
  112. Grid.Column="0"
  113. Grid.ColumnSpan="2">
  114. <mobile:MobileButton
  115. views:DockLayout.Dock="Left"
  116. WidthRequest="60"
  117. Text="None"
  118. Clicked="TakeNone_Click"/>
  119. <mobile:MobileButton
  120. views:DockLayout.Dock="Left"
  121. WidthRequest="40"
  122. Text="-"
  123. Margin="5,0"
  124. Clicked="SubtractOne_Click"/>
  125. <mobile:MobileButton
  126. views:DockLayout.Dock="Right"
  127. WidthRequest="70"
  128. Text="{Binding RequestedQuantity, StringFormat='All ({0})'}"
  129. Clicked="TakeAll_Click"/>
  130. <mobile:MobileButton
  131. views:DockLayout.Dock="Right"
  132. WidthRequest="40"
  133. Text="+"
  134. Margin="5,0"
  135. Clicked="AddOne_Click"/>
  136. <mobile:MobileCard
  137. views:DockLayout.Dock="Left">
  138. <mobile:MobileEntry
  139. Text="{Binding Quantity, Mode=TwoWay}"
  140. VerticalTextAlignment="Center"
  141. HorizontalTextAlignment="Center"
  142. FontSize="{StaticResource Theme.Text.Micro.Size}" Margin="0"/>
  143. </mobile:MobileCard>
  144. </views:DockLayout>
  145. <mobile:MobileButton
  146. Grid.Row="6"
  147. Grid.Column="0"
  148. BackgroundColor="Red"
  149. BorderColor="Red"
  150. Text="Cancel"
  151. Clicked="Cancel_Click"/>
  152. <mobile:MobileButton
  153. Grid.Row="6"
  154. Grid.Column="1"
  155. Text="OK"
  156. Clicked="OK_Click"
  157. IsEnabled="{Binding HasAllocation}"/>
  158. </Grid>
  159. </ContentView.Content>
  160. </ContentView>