コード例 #1
0
        private void UserControl_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
        {
            if (this.Visibility == Visibility.Visible)
            {
                lstSB = FlightMngController.LoadAirportData();
                DependencyObject ucParent = this.Parent;

                while (!(ucParent is UserControl))
                {
                    ucParent = LogicalTreeHelper.GetParent(ucParent);
                }

                parentWind = (flightMng)ucParent;

                // Cập nhật dữ liệu
                cmbSBDi.ItemsSource  = lstSB;
                cmbSBDen.ItemsSource = lstSB;

                if (parentWind.IsFlightEdit == true)
                {// Xem / sữa
                    lblCBTitle.Content = "CHUYẾN BAY SỐ" + GlobalItem.selectedFlight.MaCB;

                    txtFlightID.Text      = GlobalItem.selectedFlight.MaCB.ToString();
                    txtFlightID.IsEnabled = false;
                    txtMins.Text          = GlobalItem.selectedFlight.ThoiGianBay.Value.Minutes.ToString();
                    txtHrs.Text           = GlobalItem.selectedFlight.ThoiGianBay.Value.Hours.ToString();
                    txtNormalSeats.Text   = GlobalItem.selectedFlight.GheThuong.ToString();
                    txtVIPSeats.Text      = GlobalItem.selectedFlight.GheVip.ToString();
                    cmbSBDi.SelectedItem  = lstSB.Where(x => x.MaSB == GlobalItem.selectedFlight.SBDi).SingleOrDefault();
                    cmbSBDen.SelectedItem = lstSB.Where(x => x.MaSB == GlobalItem.selectedFlight.SBDen).SingleOrDefault();

                    AddCombo.Visibility  = Visibility.Hidden;
                    EditCombo.Visibility = Visibility.Visible;
                }
                else
                {// Thêm mới
                    lblCBTitle.Content = "THÊM CHUYẾN BAY MỚI";

                    txtFlightID.Text = (parentWind.soChuyenBay + 1).ToString();
                    if (parentWind.IsFlightEdit == true)
                    {
                        GlobalItem.selectedFlight = null;
                    }
                    AddCombo.Visibility  = Visibility.Visible;
                    EditCombo.Visibility = Visibility.Hidden;
                }
            }
            else
            {
                DependencyObject ucParent = this.Parent;

                while (!(ucParent is UserControl))
                {
                    ucParent = LogicalTreeHelper.GetParent(ucParent);
                }

                flightMng parentWind = (flightMng)ucParent;

                txtFlightID.IsEnabled = true;
                parentWind.loadChuyenBayData();
            }
        }