internal void UpdateRow(TableRow row) { CreateTopLeftButton(); if (row.control == null) { var rButton = new TableRowButton(ColumnsStyle); rButton.row = row; rButton.Size = new Size(40, row.Height); row.control = rButton; row.UpdateHeaderText(); Controls.Add(rButton); } row.control.Visible = !rowHeadersHidden; if (row.Items.Length != Columns.Count) { row.AddjustItemsCountTo(Columns.Count); } if (row.ItemsControls == null) { row.ItemsControls = new TableRow.TableRowControlsCollection(row, Columns.Count); } if (row.ItemsControls.Length != row.Items.Length) { var newControls = new Control[Columns.Count]; if (row.ItemsControls.Length > newControls.Length) // Dispose unnecessary controls. { Array.Copy(row.ItemsControls.items, 0, newControls, 0, newControls.Length); for (int i = newControls.Length; i < row.ItemsControls.Length; i++) { var rowC = row.ItemsControls[i]; if (rowC != null) { rowC.Dispose(); } } } else { Array.Copy(row.ItemsControls.items, 0, newControls, 0, row.ItemsControls.Length); } row.ItemsControls.items = newControls; } if (SkipControlsInitializations == false) { for (int i = 0; i < row.Items.Length; i++) { if (row.ItemsControls[i] != null) { continue; } int controlColumn = i; TextBox itemControl = new TextBox(); itemControl.uwfBorderColor = Color.Transparent; itemControl.Size = new Size(Columns[i].Width, row.Height); itemControl.TextChanged += (s, a) => { row.Items[controlColumn] = itemControl.Text; }; if (row.Items[i] != null) { itemControl.Text = row.Items[i].ToString(); } row.ItemsControls[i] = itemControl; } } }
internal void RaiseOnRowClick(TableRow row, MouseEventArgs mArgs) { OnRowClick(row, mArgs); }
public virtual int Add(TableRow row) { items.Add(row); owner.UpdateRow(row); return(items.Count - 1); }
public int FindIndex(TableRow row) { return(items.FindIndex(x => x == row)); }
public TableRowControlsCollection(TableRow row, int count) { owner = row; items = new Control[count]; }