예제 #1
0
        //===================================================
        // Display selected busNumber, how many seats are free
        // and description
        //===================================================
        private void rowSelected(object sender, SelectionChangedEventArgs e)
        {
            Ticket      takeData     = new Ticket();
            DataGrid    dg           = (DataGrid)sender;
            DataRowView row_selected = dg.SelectedItem as DataRowView;

            string busNumber = null;

            if (row_selected != null)
            {
                busNumber = row_selected["busNumber"].ToString();
                //++++++++++++++++++++
                //Bug found - when clicked on empty datagrid
                //++++++++++++++++++++
                displayGrid.ItemsSource = takeData.choosenDB(Convert.ToInt32(busNumber)).DefaultView;

                Bus         busData         = new Bus();
                DataGrid    b_dg            = (DataGrid)sender;
                DataRowView rowBus_selected = b_dg.SelectedItem as DataRowView;

                seatsNumberBox.Text = rowBus_selected["maxSeats"].ToString();

                descriptionBox.Text = rowBus_selected["description"].ToString();
            }
        }
예제 #2
0
        //===================================================
        // When dropDown then fill the comboBox with the
        // 'Description' values from DB
        // Also check the free Seats
        //
        //===================================================
        private void comboBox_1_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Bus         bus    = new Bus();
            Ticket      ticket = new Ticket();
            ComboBox    cmb    = (ComboBox)sender;
            DataRowView drv    = cmb.SelectedItem as DataRowView;

            int    holder   = 0;
            int    busNbr   = 0;
            int    seatNbr  = 0;
            string freeSeat = null;


            if (drv != null)
            {
                descriptionTxt.Text = drv["description"].ToString();   // Set textbox with 'description'
                busNumberTxt.Text   = drv["busNumber"].ToString();     // Set textbox with 'busNumber'

                holder = Convert.ToInt32(drv["maxSeats"].ToString());  // Set holder (int) with 'maxSeats'
                busNbr = Convert.ToInt32(drv["busNumber"].ToString()); // Set busNbr (int) with 'busNumber'

                // Creating array (only when user select from dropDown and only works for current bus
                string[] seats = new string[holder];

                DataTable dt = ticket.choosenDB(busNbr);

                for (int y = 0; y < dt.Rows.Count; y++)
                {
                    seatNbr = Convert.ToInt32(dt.Rows[y]["seatNumber"]);

                    for (int i = 1; i < seats.Length + 1; i++)
                    {
                        if (i == seatNbr)
                        {
                            seats[i - 1] = seatNbr.ToString();
                        }
                    }
                }

                for (int z = 0; z < seats.Length; z++)
                {
                    if (seats[z] == null)
                    {
                        freeSeat = (z + 1).ToString();
                        comboSeat.Items.Add(freeSeat);
                    }
                }
            }
        }