WPF DropShadowEffect

Uma forma muito simples de aplicar uma sombra a um controlo consiste em utilizar o efeito “DropShadowEffect“.

Este, tal como o “BlurEffect“, vem pré-definido na Framework .NET, sendo muito simples a sua utilização.

<Grid HorizontalAlignment="Center" VerticalAlignment="Center" >
    <StackPanel Orientation="Vertical">
        <Label Content="Efeito Sombra (DropShadowEffect)" FontFamily="Cooper Black" FontSize="50" Foreground="#AA000000" HorizontalAlignment="Center" Margin="10">
            <Label.Effect>
                <DropShadowEffect/>
            </Label.Effect>
        </Label>
        <Button HorizontalAlignment="Center" VerticalAlignment="Center" Content="Botão Com Sombra" Foreground="#FF000000" FontFamily="Cooper Black" FontSize="40" Margin="10" Padding="10"  >
            <Button.Effect>
                <DropShadowEffect />
            </Button.Effect>
        </Button>
    </StackPanel>
</Grid>

Recorrendo ao Blend podemos ter ainda mais efeitos disponíveis, mas estaremos a aumentar a complexidade.

Boas formatações!

Fonte: https://wpf.2000things.com/tag/dropshadoweffect/

Anúncios

WPF Yes/No MessageBox – “O Trump tem um penteado estranho?”

O exemplo seguinte demonstra como usar uma MessageBox para confirmar um determinada operação, como por exemplo, decidir se vamos eliminar definitivamente um registo numa base de dados, ou não.

Neste caso vamos apenas questionar o estilo capilar do mais recente Presidente dos USA.

Ao pressionar o botão surge a pergunta:

Se responder sim faz algo … neste caso chama outra MessageBox:

Caso contrário, também merecemos uma resposta … neste caso:

O código é muito simples:

using System.Windows;

namespace yesOrNoWpfApplication
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void button_Click(object sender, RoutedEventArgs e)
        {
            if (MessageBox.Show("Tem a certeza?", "O Trump tem um penteado estranho.", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                MessageBox.Show("Pois tem.");
            }
            else
            {
                MessageBox.Show("Ai isso é que tem!");
            }
        }
    }
}

O exemplo pode ser descarregado aqui: https://app.box.com/s/pg6s6m6thi9nz83jz87v6lufh3uwxjfp

Ler mais informações acerca da classe MessageBox.

Como carregar num botão da interface recorrendo à programação (C# WPF)

Carregar num botão de uma interface gráfica é tão simples como pegar no rato e fazer um clique sobre o mesmo!

Mas vamos supor que queremos clicar noutro botão (B2) que, após a execução de uma tarefa, exige que um segundo botão seja também clicado(B1).

exemplobotaoNeste exemplo, sempre que um botão é pressionado, o seu contador é incrementado. Continue reading “Como carregar num botão da interface recorrendo à programação (C# WPF)”

Controlando vários botões com o mesmo evento numa aplicação C# WPF

Já tinha abordado este assunto no passado a respeito da criação do Jogo do Galo escrito em C++/Qt (ver aqui).

A ideia consiste em controlar vários botões com um único evento, como por exemplo num teclado numérico que serve para introduzir códigos de até seis algarismos.

mykeyboard

Continue reading “Controlando vários botões com o mesmo evento numa aplicação C# WPF”

Três lições muito simples para fazer paraquedismo

Como andam para aí umas certas pessoas a dizer que, por aqui, só se fala “programês“, decidi criar uma nova categoria. Anedotas!

A versão escrita seria a seguinte:

  1. Enquanto vires vacas do tamanho de formigas tudo bem.
  2. Quando vires vacas do tamanho de vacas esta na hora de abrir o pára-quedas.
  3. Quando vires formigas do tamanho de vacas…tarde demais!

A ilustração realizada por uma artista plástica muito conhecida:

anedota01

by J20170118

 

Manipulação de imagens associadas a um “Image Control” – Ficheiro> source>MySQL

trio3

Com este exemplo pretendo demonstrar algumas formas de manipular imagens no contexto de uma aplicação escrita na linguagem C# (WPF). Para o efeito vamos considerar a imagem quando armazenada num ficheiro de disco, a imagem carregada para o controlo Image e a imagem quando armazenada numa base de dados (MySQL).

Por uma questão de simplificação apenas vou considerar o formato JPEG.

Em síntese, com a aplicação aqui apresentada, pretendo dar resposta às seguintes questões:

  • Como carregar a imagem de um Resource Dictionary para um controlo Image?
  • Como carregar uma imagem armazenada em disco para um controlo Image?
  • Como carregar os dados da base de dados para a DataGrid, sendo um dos campos do tipo BLOB?
  • Como inserir um registo na base de dados, sendo um dos campos do tipo imagem (Blob)?
  • Como copiar uma imagem do registo selecionada na DataGrid para outra imagem (área de preview)?
  • Como guardar em disco uma imagem exibida num controlo Image?
  • Como guardar em disco uma imagem exibida num campo de uma DataGrid?
  • Como copiar a imagem exibida num campo de uma DataGrid para um controlo Image?

O Código completo pode ser descarregado aqui. Continue reading “Manipulação de imagens associadas a um “Image Control” – Ficheiro> source>MySQL”

Carregar DataGrid a partir de uma tabela MySQL (C# e WPF)

Este exemplo muito simples pretende apenas indicar uma forma de carregar os dados de uma tabela, armazenada numa base de dados MySQL, para uma controlo Datagrid.

datagridmysql01 Continue reading “Carregar DataGrid a partir de uma tabela MySQL (C# e WPF)”

Exemplo em C# WPF “semáforo”

semaforo

Contém:

  • ResourceDictionary com as imagens (png) a utilizar na aplicação.
  • Como mudar a image (Source) de um Image Control a partir de um Resource.Dictionary.

Descarregar exemplo: semaforo.zip

Código utilizado para carregar a imagem do botão a partir do resource:

semaforo.Source = (BitmapImage) Application.Current.Resources["semaforoVermelho"];