示例#1
0
        public static void View(int customerId, int bookingNumber)
        {
            List <Movie> movies  = Read.AllMovies();
            Booking      booking = Read.UserBookings(customerId).Single(b => b.BookingNumber == bookingNumber);

            Application.Init();
            var top = Application.Top;

            var win = new Window(new Rect(0, 0, top.Frame.Width, top.Frame.Height), "Update Booking");

            top.Add(win);

            var movieIdField  = new TextField(14, 2, 40, $"{booking.MovieId}");
            var quantityField = new TextField(14, 4, 40, $"{booking.Quantity}");

            var createBtn = new Button(5, 10, "Update Booking")
            {
                Clicked = () =>
                {
                    if (Utilities.CheckMovieId(movieIdField, out int movieId) && int.TryParse(Utilities.FieldString(quantityField), out int quantity))
                    {
                        Update.Booking(booking.BookingId, movieId, quantity);
                        Application.RequestStop();
                    }
                    else
                    {
                        win.Add(new Label(3, 8, "Invalid Input..."));
                    }
                }
            };

            win.Add(
                new Label(3, 2, "Movie (ID): "),
                new Label(3, 4, "Quantity: "),
                new Label(56, 2, "Movie (ID)"),
                new Label(68, 2, "Title"),
                new Label(110, 2, "Price"),
                movieIdField,
                quantityField,
                createBtn
                );

            int y = 3;

            for (int i = 0; i < movies.Count; i++)
            {
                Movie m = movies[i];
                win.Add(
                    new Label(56, y, $"{m.MovieId}"),
                    new Label(68, y, $"{m.Title}"),
                    new Label(110, y, $"{m.Price:C0}")
                    );
                y++;
            }
            ;
            Application.Run();
        }
    }
示例#2
0
 public static bool CheckMovieId(TextField textField, out int number)
 {
     if (int.TryParse(FieldString(textField), out int n))
     {
         number = n;
         List <Movie> movies = Read.AllMovies();
         foreach (Movie movie in movies)
         {
             if (number == movie.MovieId)
             {
                 return(true);
             }
         }
     }
     number = 0;
     return(false);
 }