Seções iMasters
.NET + C# + Desenvolvimento

WPF – Criando um menu em tempo de execução

Já publiquei outros artigos sobre o Windows Presentation Foundation – WPF, e uma grande parte sobre os recursos do DataBinding. Neste artigo, veremos como criar um menu em tempo de execução em uma aplicação WPF.

Você pode criar aplicações WPF usando as seguintes ferramentas:

Pela sua simplicidade o projeto poderá ser aberto em qualquer uma das versões citadas. A linguagem escolhida poderia ser C# ou VB .NET, pois o código também é bem simples, mas usaremos o SharpDevelop justamente para mostrar que podemos usar o recurso de converter o código para C# ou VB .NET.

Agora abra o SharpDevelop 4.0 e no menu File selecione New -> Solution:

Na janela New Project , observe as opções oferecidas. Vamos selecionar a linguagem C# e o item WPF e em Templates selecionar WPF Application. Em seguida, vamos informar o nome WPF_Menu_c e clicar no botão Create.

Será criada a solução, e em uma das suas visões, selecionando a aba Projects veremos a estrutura da solução. Selecionando a guia Source, veremos a janela Window1.xam.

Agora clique sobre o arquivo Window1.xaml.cs para ver o código:

Vamos incluir a rotina criarMenu(), depois definir o seu código para criar um menu Arquivo com duas opções: Abrir e Sair.

private void criarMenu()
{
// cria o menu principal.
Menu mainMenu = new Menu();
contentGrid.Children.Add(mainMenu);
mainMenu.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch;
mainMenu.VerticalAlignment = System.Windows.VerticalAlignment.Top;

// Cria o menu de Arquivo
MenuItem fileMenuItem = new MenuItem();
fileMenuItem.Header = "_Arquivo";
mainMenu.Items.Add(fileMenuItem);

// Cria os itens do menu Arquivo: Abrir
MenuItem openMenuItem = new MenuItem();
fileMenuItem.Items.Add(openMenuItem);
openMenuItem.Header = "_Abrir";
openMenuItem.Click += openMenuItem_Click;
ToolTip openToolTip = new ToolTip();
openMenuItem.ToolTip = openToolTip;
openToolTip.Content ="Abrir um novo Arquivo";

//cria o item Sair
MenuItem exitMenuItem = new MenuItem();
fileMenuItem.Items.Add(exitMenuItem);
exitMenuItem.Header = "S_air";
exitMenuItem.Click += exitMenuItem_Click;
ToolTip exitToolTip = new ToolTip();
exitMenuItem.ToolTip = exitToolTip;
exitToolTip.Content = "Encerrar";
}
private void openMenuItem_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Abrir um novo arquivo");
}
private void exitMenuItem_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Até logo!");
this.Close();
}

Agora é só alegria! Executando o projeto iremos obter:

Simples né?

Agora vamos converter o código do projeto que foi feito na linguagem C# para a linguagem VB .NET. Selecione o arquivo Window1.xaml.cs e no menu Project selecione Convert -> From C# to VB .NET.

Será criado um novo projeto na solução, já convertido para a linguagem VB .NET conforme figura abaixo:

Simples assim!

O projeto completo disponível aqui: WPF_Menu_c.zip

No próximo artigo veremos como criar menus em tempo de projeto!  Eu sei, é apenas WPF, mas eu gosto!

Mensagem do anunciante:

Torne-se um Parceiro de Software Intel®. Filie-se ao Intel® Developer Zone. Intel®Developer Zone

Comente também

1 Comentário

Moacir

Seus artigos são muito bons!

Qual a sua opinião?