/// <summary> /// Wciśnięcie przycisku powoduje pobrania numeru id zadania wybranego przy pomocy elementu ComboBox. /// Id zadania wykorzystywane jest przez Metodę ZamknijZadanie, parametr Data_zakonczenia pobierany jest z pola wprowadzania tekstu. /// Element DataGrid jest ponownie wypełniany zadaniami użytkownika, tak by wyświetlić wprowadzoną zmianę. /// </summary> private void Button_Click(object sender, RoutedEventArgs e) { int idZadania = GetId.GetIdTask(Opis_zadania.Text); InsertUpdate.ZamknijZadanie(idZadania, Data_zakon.Text); DataGrids.FillDataGridTasksForUser(Zadania, id); }
/// <summary> /// Przyciśnięcie tego przycisku powoduje wypełnienie obiektu DataGrid zadaniami przypisanymi działowi wybranemu przy użyciu elementu dropdown_działy. /// </summary> private void Button_Click_1(object sender, RoutedEventArgs e) { string dzialy = dropdown_dzialy.Text; int id = GetId.GetIdDepartment(dzialy); DataGrids.FillDataGridTasksForDepartment(Zadania, id); }
/// <summary> /// Przyciśnięcie przycisku powoduje wyświetlnie zadań pracownika, którego nazwisko zostało wybrane przy użyciu elementu dropdown_nazwiska. /// </summary> private void Button_Click(object sender, RoutedEventArgs e) { string uzytkownik = dropdown_nazwiska.Text; int id = GetId.GetIdUser(uzytkownik); DataGrids.FillDataGridTasksForUser(Zadania, id); }
/// <summary> /// Element admin panel jest inicjalizowany następującymi elementami: /// <list type="bullet"> /// <item> /// <term>DataGrid Zadania</term> /// <description>jest wypełniany wszystkimi zadaniami z bazy danych</description> /// </item> /// <item> /// <term>ComboBox ComboPracownik</term> /// <description>jest wypłniany nazwiskami wszystkich pracowników</description> /// </item> /// <item> /// <term>ComboBox dropdown_nazwiska</term> /// <description>jest wypłniany nazwiskami wszystkich pracowników</description> /// </item> /// <item> /// <term>ComboBox ComboDzial</term> /// <description>jest wypłniany nazwami wszystkich działów</description> /// </item> /// <item> /// <term>ComboBox dropdown_dzialy</term> /// <description>jest wypłniany nazwami wszystkich działów</description> /// </item> /// </list> /// </summary> public AdminPanel() { InitializeComponent(); DataGrids.FillDataGridAllTasks(Zadania); Dropdown.FillDropdownUsers(ComboPracownik); Dropdown.FillDropdownUsers(dropdown_nazwiska); Dropdown.FillDropdownDepartments(dropdown_dzialy); Dropdown.FillDropdownDepartments(ComboDzial); }
/// <summary> /// Przyciśnięcie przycisku powoduje pobranie wartości z pól ComboPracownik i ComboDzial i przy użyciu funkcji klasy GetId przekształcenie ich do wartości id. /// Wartości uzyskane w ten sposób i wartości pobierane wprost z pól wprowadzania tekstu używane są do wywołania funkcji InsertZadania. /// Następnie aktualizowana jest zawartość elementu DataGrid Zadania, tak by pokazać również dodane zadanie. /// </summary> private void Button_Click_2(object sender, RoutedEventArgs e) { string IdValue = Id.Text; int Id_dzialuValue = GetId.GetIdDepartment(ComboDzial.Text); int Id_pracownikaValue = GetId.GetIdUser(ComboPracownik.Text); string OpisValue = Opis.Text; string Czas_na_wykoValue = Czas_na_wyko.Text; string DeadlineValue = Deadline.Text; InsertUpdate.InsertZadania(IdValue, Id_dzialuValue, Id_pracownikaValue, OpisValue, Czas_na_wykoValue, DeadlineValue); DataGrids.FillDataGridAllTasks(Zadania); }
public void UpdateCurrentRowOfDG(string DgName) { FG_DataGrid DG = DataGrids.Find(e => e.Name == DgName); if (DG == null) { throw new Exception("Exception in UpdateCurrentRowOfDG- DG not found in: " + DgName); } FG_Row row = new FG_Row(); foreach (FG_Control fgCtrl in DG.RowModel.Controls) { row.Controls.Add(new FG_Control(fgCtrl.Name, fgCtrl.Value)); } DG.Rows.Add(row); DG.currentRow = row; }
private void Clear() { ActiveDataGrid = null; foreach (var dataTable in DataTables) { dataTable.RowChanged -= DataTableOnRowChanged; } foreach (var dataGrid in DataGrids) { dataGrid.BeginningEdit -= OnBeginningEdit; } DataTables.Clear(); DataGrids.Clear(); Messages.Text = string.Empty; Grids.RowDefinitions.Clear(); Grids.Children.Clear(); }
private FrameworkElement LoadTable([NotNull] XElement element) { // data table Debug.ArgumentNotNull(element, nameof(element)); var dataTable = new ResultDataTable { TableName = @"Table" }; dataTable.RowChanged += DataTableOnRowChanged; LoadColumns(dataTable, element); LoadRows(dataTable, element); dataTable.AcceptChanges(); DataTables.Add(dataTable); // datagrid var dataGrid = new DataGrid { VerticalAlignment = VerticalAlignment.Stretch, RowHeaderWidth = 0, CanUserReorderColumns = false, CanUserSortColumns = false, CanUserAddRows = false, CanUserDeleteRows = false, Tag = dataTable }; dataGrid.BeginningEdit += OnBeginningEdit; dataGrid.PreviewMouseRightButtonDown += HandleRightMouseDown; DataGrids.Add(dataGrid); dataGrid.ItemsSource = dataTable.DefaultView; return(dataGrid); }
/// <summary> /// Panel_uzytkownika jest inicjalizowany z elemntem DataGrid wypełnionym zadaniami przypisanymi zalogowanemu użytkownikowi. /// Podczas inicjalizacji element typu ComboBox wypełniany jest Opisami zadań dla danego użytkownika. /// </summary> public Panel_uzytkownika() { InitializeComponent(); DataGrids.FillDataGridTasksForUser(Zadania, id); Dropdown.FillDropdownTask(Opis_zadania, id); }
/// <summary> /// 加载XML配置文件 /// </summary> /// <returns></returns> public static object LoadXml() { int count = 0; //string en = ""; //string zh = ""; string sharemodel = ""; XmlDocument doc = new XmlDocument(); doc.Load("config.xml"); XmlElement root = doc.DocumentElement; XmlNodeList pages = root.GetElementsByTagName("page"); foreach (XmlNode node in pages) { XmlNodeList cot = ((XmlElement)node).GetElementsByTagName("count"); if (cot.Count == 1) { count = Convert.ToInt32(cot[0].InnerText); } } XmlNodeList projects = root.GetElementsByTagName("project"); foreach (XmlNode node in projects) { XmlNodeList names = ((XmlElement)node).GetElementsByTagName("name"); foreach (XmlNode name in names) { XmlNodeList english = ((XmlElement)node).GetElementsByTagName("en"); if (english.Count == 1) { en = english[0].InnerText; } XmlNodeList chinese = ((XmlElement)node).GetElementsByTagName("zh"); if (english.Count == 1) { zh = chinese[0].InnerText; } } XmlNodeList paths = ((XmlElement)node).GetElementsByTagName("path"); foreach (XmlNode path in paths) { XmlNodeList ShareModel = ((XmlElement)node).GetElementsByTagName("sharemodel"); if (ShareModel.Count == 1) { sharemodel = ShareModel[0].InnerText; } } } List <DataGrids> datas = new List <DataGrids>(); //datagrid XmlNodeList datagrids = root.GetElementsByTagName("datagrid"); foreach (XmlNode node in datagrids) { DataGrids data = new DataGrids(); XmlNodeList ItemsSources = ((XmlElement)node).GetElementsByTagName("ItemsSource"); XmlNodeList SelectedItems = ((XmlElement)node).GetElementsByTagName("SelectedItem"); XmlNodeList PageSizes = ((XmlElement)node).GetElementsByTagName("PageSize"); XmlNodeList TotalCounts = ((XmlElement)node).GetElementsByTagName("TotalCount"); XmlNodeList PageIndexs = ((XmlElement)node).GetElementsByTagName("PageIndex"); XmlNodeList IsSelectedAll = ((XmlElement)node).GetElementsByTagName("IsSelectedAll"); data.ItemsSource = ItemsSources[0].InnerText; data.SelectedItem = SelectedItems[0].InnerText; data.PageIndex = PageIndexs[0].InnerText; data.PageSize = PageSizes[0].InnerText; data.TotalCount = TotalCounts[0].InnerText; data.IsSelectedAll = IsSelectedAll[0].InnerText; datas.Add(data); } CsprojName csproj = new CsprojName(); csproj.ShowDialog(); return(new { count, en = en, zh, sharemodel, datas }); }
protected virtual List <Control> GetDataRelation(Type model, BindingSource prevBindingSource = null, DataTable prevDataTable = null, string propertyName = null, int?columnId = null) { var columnsToHide = new List <string>(); propertyName += "HidenColumn"; //ToDo: To refactor var dataGrid = new DataGridView(); var bsCustomer = new BindingSource(); var dataTable = new DataTable(model.Name); DsMain.Tables.Add(dataTable); if (prevDataTable != null) { columnsToHide.Add(propertyName); dataTable.Columns.Add(propertyName, typeof(int)); } else { bsCustomer.DataSource = DsMain; bsCustomer.DataMember = model.Name; dataGrid.DataSource = bsCustomer; DataGrids.Add(dataGrid); } var modelProperties = model.GetProperties(); var counter = 0; foreach (var property in modelProperties) { if (property.PropertyType.IsArray) { columnsToHide.Add(property.Name + "HidenColumn"); dataTable.Columns.Add(property.Name + "HidenColumn", typeof(int)); GetDataRelation(property.PropertyType.GetElementType(), bsCustomer, dataTable, property.Name, counter); } else { if (property.PropertyType.FullName != null && !(property.PropertyType.IsClass && !property.PropertyType.FullName.StartsWith("System."))) { dataTable.Columns.Add(property.Name, property.PropertyType); } else { columnsToHide.Add(property.Name + "HidenColumn"); dataTable.Columns.Add(property.Name + "HidenColumn", typeof(int)); GetDataRelation(property.PropertyType, bsCustomer, dataTable, property.Name, counter); } } counter++; } if (prevDataTable != null) { if (columnId != null) { var dataRelation = new DataRelation(model.Name, DsMain.Tables[DsMain.Tables.IndexOf(prevDataTable)].Columns[(int)columnId], DsMain.Tables[DsMain.Tables.IndexOf(dataTable)].Columns[0], false); DsMain.Relations.Add(dataRelation); } else { throw new NullReferenceException(); } bsCustomer = new BindingSource { DataSource = prevBindingSource, DataMember = model.Name }; dataGrid.DataSource = bsCustomer; DataGrids.Add(dataGrid); } HideColumnDictionary.Add(dataGrid, columnsToHide); return(DataGrids); }