Espiunca – Areinho (Passadiços do Paiva – Arouca)

espiuncaAreinho

Anúncios

Como obter o próximo id livre de uma tabela MySQL (C# WPF)

Mais uma dica que pode ser útil … mas apenas em monoposto!

Antes de inserir um novo registo, sem recurso ao AUTO_INCREMENT, podemos desejar saber o valor do campo chave, que será obtido incrementando o id de valor mais alto.

Deixo aqui uma forma de o conseguir que, embora pouco sofisticada, faz o serviço.

#region Calcular o próximo id livre
private void mostarBtn_Click(object sender, RoutedEventArgs e)
{
    try
    {
        ligacaoBD.Open();
        string stm = "select max(idContacto) as x from contacto";
        MySqlCommand cmd = new MySqlCommand(stm, ligacaoBD);
        int id;
        Int32.TryParse(cmd.ExecuteScalar().ToString(), out id);
        id++;
        MessageBox.Show("O próximo id é " + id.ToString());
    }
    catch
    {
        MessageBox.Show("Erro!");
    }
        finally
    {
        ligacaoBD.Close();
    }

}
#endregion

Link para download da base de dados e código:

https://app.box.com/s/r1bqtvburr1dknn2455ntzenyadvs6ln

Como percorrer uma Datagrid e mostrar os dados linha a linha (C# WPF)

Neste exemplo vou utilizar uma Datagrid que é carregada a partir de uma tabela MySQL.

O efeito é este:

Quando o botão for pressionado, pretendo aceder a cada campo de cada registo, percorrendo as várias linhas de cima para baixo.

Para cada linha será exibida uma string correspondente à concatenação dos três campos.

No code-behind teremos:

...
private void mostarBtn_Click(object sender, RoutedEventArgs e)
{
    foreach (DataRowView row in dataGridContactos.Items)
    {
        string contacto = row.Row.ItemArray[0].ToString();
        string nome = row.Row.ItemArray[1].ToString();
        string idade = row.Row.ItemArray[2].ToString();
        string registo = contacto + " | " + nome + " | " + idade;
        MessageBox.Show(registo);
    }
}
...

Link para download da base de dados e código:

https://app.box.com/s/a0jezp8boau6tqjd3j6zsovd54jggseg

Utilizando controlos do Extended WPF Toolkit™ Community Edition

Por vezes os controlos padrão disponibilizados para criar a nossa aplicação WPF não correspondem integralmente às nossas necessidades.

Uma primeira alternativa consiste em criar controlos personalizados, o que pode ser uma tarefa complexa para os menos experientes.

A segunda, mais simples, consiste em recorrer a bibliotecas e ferramentas adicionais, como é o caso da que vamos utilizar aqui.

A título de exemplo, vamos supor que desejamos utilizar uma TextBox para ler matrículas de automóveis posteriores a 2007.

Continue reading “Utilizando controlos do Extended WPF Toolkit™ Community Edition”

Slideshow Manual usando C# e WPF

Este exemplo é muito simples e apenas me serviu para testar:

  • carregar imagens para um controlo Image que se encontram organizadas num ResouceDictionary;
  • Selecionar as imagens mediante a utilização de dois botões “anterior” e “seguinte“;
  • Associar uma ação ao botão central, no qual está a ser exibida a imagem, que será diferente dependendo da imagem selecionada.

Continue reading “Slideshow Manual usando C# e WPF”