/// <summary> /// Set-up for changing to a new table /// </summary> private void Setup() { tableName = cmbTable.SelectedItem.ToString(); editingSidebar = null; columns = DBMethods.MetaRequests.GetColumnDataFromTable(tableName); // Allow the user to search through all columns or a specific column for the table List <string> colSearch = new List <string> { "All Columns" }; colSearch.AddRange(columns.Select(c => c.Name)); if (editingSidebar != null) { editingSidebar.Close(); } editingSidebar = new DataEditingSidebar(columns, tableName, this); lblSidebar.Content = editingSidebar.Content; if (!(filterableDataGrid is null)) { filterableDataGrid.Close(); } filterableDataGrid = new FilterableDataGrid(columns, this); filterableDataGrid.SetMaxHeight(700); lblSearchData.Content = filterableDataGrid.Content; }
private void Initialise(object _parent, string _tableName) { InitializeComponent(); parent = _parent; dtg = new FilterableDataGrid(_tableName, this); dtg.SetMaxHeight(600); lblDtg.Content = dtg.Content; Height = double.NaN; Width = double.NaN; Button btnConfirm = new Button() { Content = "Confirm Selection", FontSize = 20, HorizontalAlignment = HorizontalAlignment.Center, Margin = new Thickness(0, 5, 0, 10) }; btnConfirm.Click += BtnConfirm_Click; stp.Children.Add(btnConfirm); }
public ClientManagement() { InitializeComponent(); // Initialise each table and set them to all be equal sizes until the user picks one to edit contactsColumns = DBMethods.MetaRequests.GetColumnDataFromTable("Contact"); dtgContacts = new FilterableDataGrid(contactsColumns, this); dtgContacts.SetMaxHeight(300); dtgContacts.HideCount(); lblContacts.Content = dtgContacts.Content; dogsColumns = DBMethods.MetaRequests.GetColumnDataFromTable("Dog"); dtgDogs = new FilterableDataGrid(dogsColumns, this); dtgDogs.SetMaxHeight(300); dtgDogs.HideCount(); lblDogs.Content = dtgDogs.Content; clientsColumns = DBMethods.MetaRequests.GetColumnDataFromTable("Client"); dtgClients = new FilterableDataGrid(clientsColumns, this); dtgClients.SetMaxHeight(300); dtgClients.HideCount(); lblClients.Content = dtgClients.Content; }
/// <summary> /// Move the user to editing whichever table they have selected /// </summary> private void UpdateMode(string newMode) { // Whenever a new item in the same table is selected: if (newMode == mode) { // Display the contacts/dogs/clients related to the selected item if (mode == contactString) { string[] selectedData = dtgContacts.GetSelectedData(); if (selectedData is null) { return; } if (selectedData[0] != "No Results!") { dtgDogs.ChangeSearch(1, selectedData[1]); dtgClients.ChangeSearch(0, selectedData[1]); } } else if (mode == dogString) { string[] selectedData = dtgDogs.GetSelectedData(); if (selectedData is null) { return; } if (selectedData[0] != "No Results!") { dtgContacts.ChangeSearch(1, selectedData[1]); dtgClients.ChangeSearch(0, selectedData[1]); } } else if (mode == clientString) { string[] selectedData = dtgClients.GetSelectedData(); if (selectedData is null) { return; } if (selectedData[0] != "No Results!") { dtgContacts.ChangeSearch(1, selectedData[0]); dtgDogs.ChangeSearch(1, selectedData[0]); } } } else { mode = newMode; if (mode == "") { return; } double notSelMax = 200; double selMax = 650; lblEditBtn.Content = $"Editing {mode}"; lblStartAddingBtn.Content = $"Add New {mode}"; // Display the selected data // Show related items in the other tables // Resize the tables if (mode == contactString) { string[] selectedData = dtgContacts.GetSelectedData(); if (selectedData[0] == "No Results!") { return; } dtgContacts.ClearSearch(); if (selectedData is null) { return; } dtgDogs.ChangeSearch(1, selectedData[1]); dtgClients.ChangeSearch(0, selectedData[1]); dtgContacts.SetMaxHeight(selMax); } else if (mode == dogString) { string[] selectedData = dtgDogs.GetSelectedData(); if (selectedData[0] == "No Results!") { return; } dtgDogs.ClearSearch(); if (selectedData is null) { return; } dtgContacts.ChangeSearch(1, selectedData[1]); dtgClients.ChangeSearch(0, selectedData[1]); dtgDogs.SetMaxHeight(selMax); } else if (mode == clientString) { string[] selectedData = dtgClients.GetSelectedData(); if (selectedData[0] == "No Results!") { return; } dtgClients.ClearSearch(); if (selectedData is null) { return; } dtgContacts.ChangeSearch(1, selectedData[0]); dtgDogs.ChangeSearch(1, selectedData[0]); dtgClients.SetMaxHeight(selMax); } if (mode != contactString) { dtgContacts.SetMaxHeight(notSelMax); } if (mode != dogString) { dtgDogs.SetMaxHeight(notSelMax); } if (mode != clientString) { dtgClients.SetMaxHeight(double.NaN); } } }