private DataGridView getDGV(InventoryPouch pouch) { // Add DataGrid DataGridView dgv = new DataGridView { Dock = DockStyle.Fill, Text = pouch.Type.ToString(), Name = DGVPrefix + pouch.Type, AllowUserToAddRows = false, AllowUserToDeleteRows = false, AllowUserToResizeRows = false, AllowUserToResizeColumns = false, RowHeadersVisible = false, ColumnHeadersVisible = false, MultiSelect = false, ShowEditingIcon = false, EditMode = DataGridViewEditMode.EditOnEnter, ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single, ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize, SelectionMode = DataGridViewSelectionMode.CellSelect, CellBorderStyle = DataGridViewCellBorderStyle.None, }; DataGridViewComboBoxColumn dgvItemVal = new DataGridViewComboBoxColumn { DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing, DisplayIndex = 0, Width = 135, FlatStyle = FlatStyle.Flat }; DataGridViewColumn dgvIndex = new DataGridViewTextBoxColumn(); { dgvIndex.HeaderText = "CNT"; dgvIndex.DisplayIndex = 1; dgvIndex.Width = 45; dgvIndex.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; } dgv.Columns.Add(dgvItemVal); dgv.Columns.Add(dgvIndex); var itemcount = pouch.Items.Length; string[] itemarr = Main.HaX ? (string[])itemlist.Clone() : getItems(pouch.LegalItems); var combo = dgv.Columns[0] as DataGridViewComboBoxColumn; foreach (string t in itemarr) { combo.Items.Add(t); // add only the Item Names } dgv.Rows.Add(itemcount > 0 ? itemcount : itemarr.Length); dgv.CancelEdit(); return(dgv); }
private void getBag(DataGridView dgv, InventoryPouch pouch) { for (int i = 0; i < dgv.Rows.Count; i++) { dgv.Rows[i].Cells[0].Value = itemlist[pouch.Items[i].Index]; dgv.Rows[i].Cells[1].Value = pouch.Items[i].Count; } }
private void setBag(DataGridView dgv, InventoryPouch pouch) { int ctr = 0; for (int i = 0; i < dgv.Rows.Count; i++) { int c = 0; string item = dgv.Rows[i].Cells[c++].Value.ToString(); int itemindex = Array.IndexOf(itemlist, item); if (itemindex <= 0) // Compression of Empty Slots { continue; } int itemcnt; int.TryParse(dgv.Rows[i].Cells[c++].Value.ToString(), out itemcnt); if (Main.HaX && SAV.Generation != 7) // Gen7 has true cap at 1023, keep 999 cap. { // Cap at absolute maximum if (SAV.Generation <= 2 && itemcnt > byte.MaxValue) { itemcnt = byte.MaxValue; } else if (SAV.Generation >= 3 && itemcnt > ushort.MaxValue) { itemcnt = ushort.MaxValue; } } else if (itemcnt > pouch.MaxCount) { itemcnt = pouch.MaxCount; // Cap at pouch maximum } else if (itemcnt <= 0) { continue; // ignore item } pouch.Items[ctr] = new InventoryItem { Index = itemindex, Count = itemcnt }; if (HasFreeSpace) { pouch.Items[ctr].FreeSpace = (bool)dgv.Rows[i].Cells[c++].Value; } if (HasNew) { pouch.Items[ctr].New = (bool)dgv.Rows[i].Cells[c].Value; } ctr++; } for (int i = ctr; i < pouch.Items.Length; i++) { pouch.Items[i] = new InventoryItem(); // Empty Slots at the end } }
private void getBag(DataGridView dgv, InventoryPouch pouch) { for (int i = 0; i < dgv.Rows.Count; i++) { int c = 0; dgv.Rows[i].Cells[c++].Value = itemlist[pouch.Items[i].Index]; dgv.Rows[i].Cells[c++].Value = pouch.Items[i].Count; if (HasFreeSpace) { dgv.Rows[i].Cells[c++].Value = pouch.Items[i].FreeSpace; } if (HasNew) { dgv.Rows[i].Cells[c].Value = pouch.Items[i].New; } } }