public HydrantDetailsForm() : base("Hydrant Details") { m_Header = new HWHeader("Hydrant Details") { Margin = new Thickness(0, 0, 0, 0) }; OutsideLayout.Children.Add(m_Header); m_ButtonLayout = new HWButtonBar(); OutsideLayout.Children.Add(m_ButtonLayout); CancelButton = m_ButtonLayout.Add("Cancel", LayoutOptions.StartAndExpand); CancelButton.Clicked += CancelButton_Clicked; Frame imageFrame = new Frame { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, HasShadow = false, OutlineColor = Color.Black, Margin = new Thickness(10, 0, 10, 0) }; OutsideLayout.Children.Add(imageFrame); m_imgMainImage = new Image() { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, Aspect = Aspect.AspectFit, }; imageFrame.Content = m_imgMainImage; StackLayout labelLayout = new StackLayout { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Margin = new Thickness(0, 0, 0, 10) }; OutsideLayout.Children.Add(labelLayout); m_lblUsername = new HWLabel { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalTextAlignment = TextAlignment.Center, HorizontalTextAlignment = TextAlignment.Center, }; labelLayout.Children.Add(m_lblUsername); m_lblLatitude = new HWLabel { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalTextAlignment = TextAlignment.Center, HorizontalTextAlignment = TextAlignment.Center }; labelLayout.Children.Add(m_lblLatitude); m_lblLongitude = new HWLabel { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalTextAlignment = TextAlignment.Center, HorizontalTextAlignment = TextAlignment.Center }; labelLayout.Children.Add(m_lblLongitude); }
public TagHydrant() : base("Tag Hydrant") { m_MediaPicker = DependencyService.Get <IMediaPicker>(); var device = Resolver.Resolve <IDevice>(); m_MediaPicker = m_MediaPicker ?? device.MediaPicker; m_Header = new HWHeader("Hydrant Details") { Margin = new Thickness(0, 0, 0, 0) }; OutsideLayout.Children.Add(m_Header); m_ButtonLayout = new HWButtonBar(); OutsideLayout.Children.Add(m_ButtonLayout); CancelButton = m_ButtonLayout.Add("Cancel", LayoutOptions.StartAndExpand); CancelButton.Clicked += CancelButton_Clicked; SaveButton = m_ButtonLayout.Add("Save", LayoutOptions.EndAndExpand); SaveButton.Clicked += SaveButton_Clicked; m_layoutPhoto = new StackLayout { Orientation = StackOrientation.Horizontal, VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, Margin = new Thickness(5, 0, 5, 0) }; OutsideLayout.Children.Add(m_layoutPhoto); Frame imageFrame = new Frame { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, OutlineColor = Color.Black, HasShadow = false, Margin = new Thickness(3, 3, 3, 3), Padding = new Thickness(0, 0, 0, 0) }; m_layoutPhoto.Children.Add(imageFrame); m_imgHydrant = new Image { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, Aspect = Aspect.AspectFit, Margin = new Thickness(0, 0, 0, 0) }; imageFrame.Content = m_imgHydrant; m_btnTakePhoto = new HWButton { Text = "Take Photo", VerticalOptions = LayoutOptions.Center, WidthRequest = 80, HeightRequest = 40, BorderColor = Color.Black, BorderWidth = 1, BackgroundColor = Color.White, FontAttributes = FontAttributes.Bold, FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Button)) }; m_btnTakePhoto.Clicked += TakePhoto_Clicked; m_layoutPhoto.Children.Add(m_btnTakePhoto); if (m_MediaPicker.IsCameraAvailable) { m_btnTakePhoto.IsEnabled = true; SaveButton.IsEnabled = false; } else { m_btnTakePhoto.IsEnabled = false; SaveButton.IsEnabled = true; } StackLayout lableLayout = new StackLayout { Orientation = StackOrientation.Vertical, HorizontalOptions = LayoutOptions.FillAndExpand, Margin = new Thickness(5, 10, 5, 10) }; OutsideLayout.Children.Add(lableLayout); m_lblCount = new HWLabel { Text = "Position Count:", HorizontalOptions = LayoutOptions.FillAndExpand }; lableLayout.Children.Add(m_lblCount); m_lblLatitude = new HWLabel { Text = "Latitude:", HorizontalOptions = LayoutOptions.FillAndExpand }; lableLayout.Children.Add(m_lblLatitude); m_lblLongitude = new HWLabel { Text = "Longitude:", HorizontalOptions = LayoutOptions.FillAndExpand }; lableLayout.Children.Add(m_lblLongitude); m_Location = new LocationManager(); m_Location.StartListening(); m_Averager = new PositionAverager(m_Location, 10); m_Averager.PositionUpdated += Averager_PositionUpdated; StartUpdateLocation(); }