private void AddRowToPanel(TableLayoutPanel panel, IList <UserModel> rowElements) { for (int i = 0; i < rowElements.Count; i++) { RowStyle temp = panel.RowStyles[0]; panel.RowCount++; panel.RowStyles.Add(new RowStyle(SizeType.Absolute, 50F)); panel.Controls.Add(new Label() { Text = (i + 1).ToString(), Font = new Font("Microsoft Sans Serif", 11), AutoSize = true }, 0, panel.RowCount - 1); panel.Controls.Add(new Label() { Text = rowElements[i].username, Font = new Font("Microsoft Sans Serif", 11), AutoSize = true }, 1, panel.RowCount - 1); TableLayoutPanel newPanel = new TableLayoutPanel(); newPanel.ColumnCount = 2; newPanel.RowCount = 1; newPanel.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 50F)); newPanel.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 50F)); newPanel.AutoSize = true; newPanel.Dock = DockStyle.Fill; newPanel.Anchor = (AnchorStyles.Left | AnchorStyles.Top | AnchorStyles.Right); panel.Controls.Add(newPanel, 2, panel.RowCount - 1); Label newLabel1 = new Label(); newLabel1.Click += (sender, e) => { Control c = panel.GetControlFromPosition(1, panel.GetRow(newPanel)); SettingAccountDialog.changePassword("Set a new password: "******"Change Password", c.Text); }; newLabel1.Text = "Update"; newLabel1.Font = new Font("Microsoft Sans Serif", 11); newLabel1.Name = "lblUpdate" + i.ToString(); newLabel1.AutoSize = true; newPanel.Controls.Add(newLabel1, 0, 1); Label newLabel2 = new Label(); newLabel2.Click += (sender, e) => { for (int j = 0; j < panel.ColumnCount; j++) { Control c = panel.GetControlFromPosition(j, panel.GetRow(newPanel)); if (j == 1) { SqliteDataAccess.deleteUser(c.Text); } panel.Controls.Remove(c); } for (int j = panel.GetRow(newPanel) + 1; j < panel.RowCount; j++) { for (int k = 0; k < panel.ColumnCount; k++) { var control = panel.GetControlFromPosition(k, j); if (control != null) { panel.SetRow(control, j - 1); } } } panel.RowStyles.RemoveAt(panel.RowCount - 1); panel.RowCount--; panel.ResumeLayout(false); panel.PerformLayout(); }; newLabel2.Text = "Delete"; newLabel2.Font = new Font("Microsoft Sans Serif", 11); newLabel2.Name = "lblDelete" + i.ToString(); newLabel2.AutoSize = true; newPanel.Controls.Add(newLabel2, 1, 1); } }
private void Label5_Click(object sender, EventArgs e) { SettingAccountDialog.newUser("New User"); }