Mám ContextMenuStrip nazývá: DGVContextStrip
její zobrazí, když uživatel klikne na můj datagridview.
Že MenuStrip obsahuje položku s názvem AddUpgradeTagToolStripMenuItem
která obsahuje dílčí položky(dropdownitems), tyto položky jsou všechny pojmenované s číslem v jejich názvu.
např: Add1ToolStripMenuItem
, Add2ToolStripMenuItem
, Add3ToolStripMenuItem
.... a tak dále, dokud Add25ToolStripMenuItem
.
Když uživatel klikne na Datagridview, chci zkontrolovat, zda buňka obsahuje číslo "1" a pak, když to dělá, aby Add1ToolStripItem.checked = true
Myslel jsem, že bych smyčka přes čísla od 1 do 25, a v každé smyčky zkontrolujte, zda buňka obsahuje 1 a pokud je to pravda, změna je kontrolována hodnota položka nabídky. něco jako...
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 nebude fungovat, iv viděli příklady on-line, které používají ovládací prvek.najít metodu, ale nemohla jsem se dostat do práce pro mé použití. například
Dim ControlName As String = "Add" & i & "ToolStripMenuItem"
CType(Me.Controls.Find(ControlName, True), ToolStripMenuItem).Checked = True
nějaké nápady, jak bych si to do práce? Uvědomuji si, že jsem mohl použít 25 když pak ještě prohlášení, ale tak nějak jsem chtěl, aby kód mnohem krásnější.