Mám ContextMenuStrip s názvom: DGVContextStrip
jeho zobrazí, keď používateľ právo kliknutí na moje datagridview.
Že MenuStrip obsahuje položku s názvom AddUpgradeTagToolStripMenuItem
ktoré obsahuje sub položky(dropdownitems), tieto čiastkové položky sú všetky pomenované s číslom v názve.
napr.: Add1ToolStripMenuItem
, Add2ToolStripMenuItem
, Add3ToolStripMenuItem
.... a tak ďalej, až kým Add25ToolStripMenuItem
.
Keď používateľ právo kliknutí na Datagridview, chcem skontrolovať, ak bunka obsahuje číslo "1" potom, ak sa to robí Add1ToolStripItem.checked = true
Myslel som, ja by som slučky cez čísla od 1 do 25 rokov, a v každej slučky skontrolujte, či bunka obsahuje 1 a ak je to pravda, zmeniť skontrolovať hodnotu položky menu. niečo ako...
For i = 1 to 25
If DataGridView1.SelectedRows(0).Cells("Text_Field").Value.ToString.Contains(i) then
CType("Add" & i & "ToolStripMenuItem", ToolStripMenuItem).Checked = True
Next
ale to nefunguje, iv vidieť príklady online, ktoré pomocou kontroly.nájsť spôsob, ale nemohol som si, že pracovať pre vlastné použitie. napríklad
Dim ControlName As String = "Add" & i & "ToolStripMenuItem"
CType(Me.Controls.Find(ControlName, True), ToolStripMenuItem).Checked = True
akékoľvek nápady, ako som si to do práce? Viem, mohla som použiť 25 ak potom ešte závierke, ale som trochu chcel, aby kód oveľa krajší.