private void CustomersRents_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { FrameworkElement form = (sender as FrameworkElement); if (e.ClickCount == 2) { if (_customerRentForm == null && form.Name == "CustomerRent") { _customerRentForm = new CustomerRentForm(_connection); } else { _customerRentForm.Close(); _customerRentForm = new CustomerRentForm(_connection); } } }
private void InitPageControls(CustomerRentForm container, int pagesQuantity) { container.Prev.Visibility = Visibility.Hidden; container.PageButton1.Visibility = Visibility.Visible; container.PageButton2.Visibility = Visibility.Visible; container.PageButton3.Visibility = Visibility.Visible; container.Splitter.Visibility = Visibility.Visible; container.PageButton4.Visibility = Visibility.Visible; container.PageButton5.Visibility = Visibility.Visible; container.PageButton6.Visibility = Visibility.Visible; container.PageNum1.Text = 1.ToString(); container.PageNum2.Text = 2.ToString(); container.PageNum3.Text = 3.ToString(); container.Next.Visibility = Visibility.Visible; if (pagesQuantity > 6) { container.PageNum4.Text = (pagesQuantity - 2).ToString(); container.PageNum5.Text = (pagesQuantity - 1).ToString(); container.PageNum6.Text = (pagesQuantity).ToString(); _carsLastPage = int.Parse(container.PageNum6.Text); } else if (pagesQuantity == 6) { container.Next.Visibility = Visibility.Hidden; container.Prev.Visibility = Visibility.Hidden; container.PageNum4.Text = (pagesQuantity - 2).ToString(); container.PageNum5.Text = (pagesQuantity - 1).ToString(); container.PageNum6.Text = (pagesQuantity).ToString(); _carsLastPage = int.Parse(container.PageNum6.Text); } else if (pagesQuantity == 5) { container.Prev.Visibility = Visibility.Hidden; container.PageButton6.Visibility = Visibility.Hidden; container.PageNum4.Text = (pagesQuantity - 1).ToString(); container.PageNum5.Text = (pagesQuantity).ToString(); _carsLastPage = int.Parse(container.PageNum5.Text); } else if (pagesQuantity == 4) { container.Prev.Visibility = Visibility.Hidden; container.PageButton6.Visibility = Visibility.Hidden; container.PageButton5.Visibility = Visibility.Hidden; container.PageNum4.Text = (pagesQuantity).ToString(); _carsLastPage = int.Parse(container.PageNum4.Text); } else if (pagesQuantity == 3) { container.Next.Visibility = Visibility.Hidden; container.Prev.Visibility = Visibility.Hidden; container.PageButton6.Visibility = Visibility.Hidden; container.PageButton5.Visibility = Visibility.Hidden; container.PageButton4.Visibility = Visibility.Hidden; container.Splitter.Visibility = Visibility.Hidden; } else if (pagesQuantity == 2) { container.Next.Visibility = Visibility.Hidden; container.Prev.Visibility = Visibility.Hidden; container.PageButton6.Visibility = Visibility.Hidden; container.PageButton5.Visibility = Visibility.Hidden; container.PageButton4.Visibility = Visibility.Hidden; container.PageButton3.Visibility = Visibility.Hidden; container.Splitter.Visibility = Visibility.Hidden; } else if (pagesQuantity <= 1) { container.PagingBlock.Visibility = Visibility.Hidden; } }
private void PageSwitcherLogic(string targetProc, CustomerRentForm container, DataTable table, TextBlock button) { int currentPage; switch (button.Name) { case "PrevPage": if (int.Parse(container.PageNum1.Text) != 1) { container.PageNum1.Text = (int.Parse(container.PageNum1.Text) - 1).ToString(); container.PageNum2.Text = (int.Parse(container.PageNum2.Text) - 1).ToString(); container.PageNum3.Text = (int.Parse(container.PageNum3.Text) - 1).ToString(); ExecutePage(_connection, targetProc, int.Parse(container.PageNum1.Text), table, container.CarsDataGrid); } if (int.Parse(container.PageNum1.Text) == 1) { container.Prev.Visibility = Visibility.Hidden; } if (container.Next.Visibility == Visibility.Hidden) { container.Next.Visibility = Visibility.Visible; } break; case "PageNum1": currentPage = int.Parse(button.Text); if (currentPage == 1) { container.Prev.Visibility = Visibility.Hidden; } ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); break; case "PageNum2": currentPage = int.Parse(button.Text); if (container.PageButton4.Visibility == Visibility.Hidden && container.PageButton5.Visibility == Visibility.Hidden && container.PageButton6.Visibility == Visibility.Hidden) { ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } else { if (currentPage == 2 && container.PageButton4.Visibility != Visibility.Hidden && container.PageButton5.Visibility != Visibility.Hidden && container.PageButton6.Visibility != Visibility.Hidden) { container.Prev.Visibility = Visibility.Visible; } if (int.Parse(container.PageNum3.Text) == _carsLastPage) { container.Next.Visibility = Visibility.Hidden; ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } else { container.PageNum1.Text = int.Parse(container.PageNum2.Text).ToString(); container.PageNum2.Text = int.Parse(container.PageNum3.Text).ToString(); container.PageNum3.Text = (int.Parse(container.PageNum3.Text) + 1).ToString(); ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } } break; case "PageNum3": currentPage = int.Parse(button.Text); if (_carsLastPage > 3) { container.Prev.Visibility = Visibility.Visible; } if (container.PageButton4.Visibility == Visibility.Hidden && container.PageButton5.Visibility == Visibility.Hidden && container.PageButton6.Visibility == Visibility.Hidden) { ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } else { if (currentPage == _carsLastPage) { container.Next.Visibility = Visibility.Hidden; ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } else if (currentPage != _carsLastPage - 1) { container.PageNum1.Text = int.Parse(container.PageNum3.Text).ToString(); container.PageNum2.Text = (int.Parse(container.PageNum2.Text) + 2).ToString(); container.PageNum3.Text = (int.Parse(container.PageNum1.Text) + 2).ToString(); ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } else { container.PageNum1.Text = (int.Parse(container.PageNum1.Text) + 1).ToString(); container.PageNum2.Text = (int.Parse(container.PageNum2.Text) + 1).ToString(); container.PageNum3.Text = (int.Parse(container.PageNum3.Text) + 1).ToString(); ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); } } break; case "PageNum4": currentPage = int.Parse(button.Text); ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); break; case "PageNum5": currentPage = int.Parse(button.Text); ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); break; case "PageNum6": currentPage = int.Parse(button.Text); ExecutePage(_connection, targetProc, currentPage, table, container.CarsDataGrid); break; case "NextPage": if (int.Parse(container.PageNum3.Text) == _carsLastPage - 1) { container.Next.Visibility = Visibility.Hidden; container.PageNum1.Text = (int.Parse(container.PageNum1.Text) + 1).ToString(); container.PageNum2.Text = (int.Parse(container.PageNum2.Text) + 1).ToString(); container.PageNum3.Text = (int.Parse(container.PageNum3.Text) + 1).ToString(); ExecutePage(_connection, targetProc, int.Parse(container.PageNum1.Text), table, container.CarsDataGrid); container.Prev.Visibility = Visibility.Visible; } else { container.PageNum1.Text = int.Parse(container.PageNum2.Text).ToString(); container.PageNum2.Text = int.Parse(container.PageNum3.Text).ToString(); container.PageNum3.Text = (int.Parse(container.PageNum3.Text) + 1).ToString(); ExecutePage(_connection, targetProc, int.Parse(container.PageNum1.Text), table, container.CarsDataGrid); container.Prev.Visibility = Visibility.Visible; } break; default: break; } }