public PartsAddPage(App_WorkTicket workTicket, App_ScheduledAppointment scheduledAppointment)
        {
            _vm = new PartsAddPageViewModel(workTicket);
            _vm.FilterItemList("ZXZXZXZXZX128391");
            _scheduledAppointment = scheduledAppointment;
            InitializeComponent();

            gridParts.ItemsSource       = _vm.ItemList;
            gridParts.MouseDoubleClick += gridParts_MouseDoubleClick;
            gridParts.PreviewKeyDown   += gridParts_PreviewKeyDown;     // dch rkl 11/01/2016 Enter to select ticket
        }
Beispiel #2
0
        public PartsAddPage(App_WorkTicket workTicket, App_ScheduledAppointment scheduledAppointment)
        {
            // instantiate the view model
            _vm = new PartsAddPageViewModel(workTicket);
            _scheduledAppointment = scheduledAppointment;

            BackgroundColor = Color.White;
            // Apply initial filter that will return empty list
            _vm.FilterItemList("ZXZXZXZXZX128391");

            // Set the page title.
            //Title = "Add Part";

            //  Create a label for the technician list
            _labelTitle            = new Xamarin.Forms.Label();
            _labelTitle.Text       = "SELECT PART";
            _labelTitle.FontFamily = Device.OnPlatform("OpenSans-Bold", "sans-serif-black", null);
            _labelTitle.FontSize   = 22;
            _labelTitle.TextColor  = Color.White;
            _labelTitle.HorizontalTextAlignment = TextAlignment.Center;
            _labelTitle.VerticalTextAlignment   = TextAlignment.Center;

            Grid titleLayout = new Grid()
            {
                BackgroundColor   = Color.FromHex("#2980b9"),
                HorizontalOptions = LayoutOptions.FillAndExpand,
                HeightRequest     = 80
            };

            titleLayout.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(1, GridUnitType.Star)
            });
            titleLayout.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Star)
            });
            titleLayout.Children.Add(_labelTitle, 0, 0);

            // create a list to hold our items
            _itemsList = new ListView()
            {
                HasUnevenRows       = true,
                SeparatorVisibility = SeparatorVisibility.None,
                ItemsSource         = _vm.ItemList,
                ItemTemplate        = new DataTemplate(typeof(PartsListDataCell))
            };
            _itemsList.ItemTapped += ListViewItemsList_ItemTapped;

            // put a search bar on the page to filter the items list
            _searchBarItems               = new SearchBar();
            _searchBarItems.Placeholder   = "Search Item Code or Desc";
            _searchBarItems.TextChanged  += SearchBarItems_TextChanged;
            _searchBarItems.SearchCommand = new Command(() => { _vm.FilterItemList(_searchBarItems.Text); });

            // create a "cancel" button to go back
            Xamarin.Forms.Button buttonAddPart = new Button()
            {
                Text              = "CANCEL",
                FontFamily        = Device.OnPlatform("OpenSans-Bold", "sans-serif-black", null),
                TextColor         = Color.White,
                BackgroundColor   = Color.FromHex("#E74C3C"),
                HorizontalOptions = LayoutOptions.FillAndExpand
            };
            buttonAddPart.Clicked += buttonAddPart_Click;

            // put it all together on the page
            Content = new StackLayout
            {
                Padding  = 30,
                Children =
                {
                    titleLayout,
                    _searchBarItems,
                    _itemsList,
                    buttonAddPart
                }
            };
        }