Usuário com melhor resposta
ToolStripMenu e ToolStripSeparator

Pergunta
-
Tenho um menu com ToolStripMenu e ToolStripSeparator. Eu queria fazer um foreach para pegar apenas os ToolStripMenu. Fiz o seguinte:
foreach (ToolStripMenuItem menu in menuPrincipal.Items) { foreach (ToolStripMenuItem sub in menu.DropDownItems) {
Quando faço isso dá erro no 2º foreach, pois ele tenta converter um ToolStripSeparator para ToolStripMenu. Como faço um foreach, neste caso, para apenas pegar os ToolStripMenu's, desprezando os ToolStripSeparator's?
Get a life. Go party!
Respostas
-
E ai cara, voce por aqui? Mundo pequeno..hehe
Nao sei se existe uma forma mais simples de se fazer isso, mas a que eu encontrei é a seguinte:
foreach (ToolStripMenuItem menu in menuPrincipal.Items) { foreach (ToolStripItem sub in menu.DropDownItems) { // checa se item é um separator if (sub is ToolStripSeparator) { // é um separator } else { // nao é um separator } } }
[]s
Robson Castilho - Desenvolvedor C# - MCTS .Net 2.0 Windows Applications- Marcado como Resposta JobaDiniz sexta-feira, 17 de abril de 2009 04:07
Todas as Respostas
-
E ai cara, voce por aqui? Mundo pequeno..hehe
Nao sei se existe uma forma mais simples de se fazer isso, mas a que eu encontrei é a seguinte:
foreach (ToolStripMenuItem menu in menuPrincipal.Items) { foreach (ToolStripItem sub in menu.DropDownItems) { // checa se item é um separator if (sub is ToolStripSeparator) { // é um separator } else { // nao é um separator } } }
[]s
Robson Castilho - Desenvolvedor C# - MCTS .Net 2.0 Windows Applications- Marcado como Resposta JobaDiniz sexta-feira, 17 de abril de 2009 04:07
-
-
Nao dá erro nao.
Note que no 2º foreach, eu troquei de "ToolStripMenuItem" para "ToolStripItem" (e portanto o erro de conversao nao ocorre mais, porque um ToolStripSeparator é derivado de ToolStripItem).
Mas se vc ja resolveu, blz!
[]s
Robson Castilho - Desenvolvedor C# - MCTS .Net 2.0 Windows Applications -