PictureBox
Como o próprio nome já sugere, a PictureBox é uma caixa de imagens, ou seja, uma moldura que pode abrigar uma imagem nos formatos GIF, JPEG, BMP, WMF e PNG. É bastante comum a utilização de PictureBoxes para a inserção de logotipos. É extremamente simples. Vamos a um exemplo. Arrastarei uma PictureBox para um projeto vazio:
Esta é a PictureBox, que é a moldura da imagem. Vamos agora inserir a imagem dentro dela. Localize a propriedade Image e clique no pequeno ícone de reticências.
Uma nova caixa de mensagem surgirá, como a imagem abaixo:
Basicamente você deve tratar essas duas opções da seguinte forma: se o arquivo a ser inserido será utilizado em vários formulários, como um logotipo que está sempre presente, por exemplo, aconselho que você use a opção “Project resource file”, pois assim ele poderá ser facilmente adicionado a outros formulários e, se precisar, também será facilmente aberto para edição, bastando que se clique duas vezes sobre ele. Por outro lado, se o arquivo será inserido uma única vez, a primeira opção tem suas vantagens, pois dessa forma o arquivo será incorporado ao formulário, mais precisamente ao arquivo de extensão "resx" referente ao formulário em que foi inserido. Isso evita que se tenha vários arquivos “poluindo” a pasta Resources da aplicação (isso é relevante somente em projetos muito grandes), mas por outro lado os arquivos não podem ser facilmente editados de dentro do Visual C#. O que aconselho é que no início você mantenha tudo com a segunda opção e os armazene na pasta Resources mesmo. Apenas fiz essa pequena descrição das diferenças para que vocês as entendam. Tanto a segunda opção é mais recomendada que o próprio Visual C# a coloca como padrão.
Então vamos prosseguir e inserir uma imagem. Clicando no botão Import será aberta uma caixa para seleção do arquivo a ser inserido na PictureBox. Vou selecionar um qualquer e clicar em OK.
Aí está a imagem inserida dentro da PictureBox e o detalhe fica por conta da pasta Resources, que foi criada e já contém o arquivo que inseri dentro dela. Mas voltando o foco para a PictureBox, vou falar de algumas propriedades importantes. A primeira delas é a BackColor, que altera a cor do fundo da PictureBox. Vou alterar para demonstrar:
Aí está o fundo alterado.
Propriedade BackgroundImage
Logo abaixo do BackColor temos a propriedade BackgroundImage. Ela permite que façamos a inserção de uma imagem para ficar no fundo da PictureBox. O processo de manipulação desta propriedade é semelhante ao BackColor. Basta clicar no ícone de reticências, depois selecionar uma imagem, que pode ser adicionada à pasta Resources ou não. Vou inserir uma imagem e demonstrar executando o código.
Aí está o fundo adicionado ao PictureBox.
Propriedade BorderStyle
Essa propriedade nos permite definir dois tipos de bordas ao PictureBox.
A FixedSingle e a Fixed3D. Sugiro que você teste as duas, pois são interessantes, mas abaixo colocarei um exemplo da Fixed3D, que acho mais elegante.
Percebam que existe uma borda bem suave dando a impressão de profundidade à PictureBox.
Propriedade ErrorImage
Por fim vou falar rapidamente sobre a propriedade ErrorImage. Ela serve para definirmos uma imagem alternativa caso a imagem original não seja encontrada ou não possa ser carregada por alguma razão. Por padrão ela exibe uma imagem branca com um xis vermelho, o que não é muito elegante. Você pode substitui-la por uma imagem mais amigável, mas claro, o ideal é que ela nunca seja exibida.
Estas foram algumas propriedades da PictureBox. Na sequência falarei sobre os Menus.