Você está aqui: C# ::: Windows Forms ::: DataGridView

Saiba mais sobre os modos de edição de um DataGridView

Quantidade de visualizações: 12692 vezes
A forma pela qual o conteúdo das células de um DataGridView pode ser editado é controlada pela propriedade EditMode. No .NET 2.0 e Visual C# 2005 esta propriedade pode receber um dos cinco valores disponíveis na enumeração DataGridViewEditMode. Antes de vê-los, vamos entender as condições sob as quais o conteúdo de uma célula do DataGridView pode ser editado.

Por padrão, o conteúdo da célula pode ser editado simplesmente digitando na célula selecionada ou pressionando a tecla F2. A célula automaticamente entra em modo de edição se todas as condições abaixo forem satisfeitas:

1) A fonte de dados do DataGridView suportar edição;
2) O controle DataGridView estiver habilitado;
3) O valor da propriedade EditMode não for EditProgrammatically;
4) As propriedades ReadOnly da célula, linha, coluna e controle estiverem todas com o valor false.

Veja agora os valores possíveis para a propriedade EditMode:

EditOnEnter - A edição se inicia quando a célula recebe o foco. Este modo é útil quando pressionamos a tecla TAB para entrar valores em toda a linha, ou quando pressionamos ENTER para inserir valores em uma coluna.

EditOnF2 - A edição se inicia quando a tecla F2 é pressionada com o foco na célula desejada. Este modo coloca o cursor no final do conteúdo da célula.

EditOnKeystroke - A edição começa quando qualquer tecla alfanumérica é pressionada com o foco na célula desejada.

EditOnKeystrokeOrF2 - A edição começa quando qualquer tecla alfanumérica ou a tecla F2 é pressionada com o foco na célula desejada.

EditProgrammatically - A edição se inicia somente quando o método BeginEdit() da classe DataGridView é chamado.

Veja um trecho de código no qual definimos o valor EditOnEnter para a propriedade EditMode de um DataGridView:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;

O valor padrão para a propriedade EditMode é EditOnKeystrokeOrF2.

Quando uma célula está sendo editada, podemos finalizar sua edição e gravar os dados internamente pressionando ENTER. Se quisermos que o conteúdo da célula seja revertido para o conteúdo original, basta pressional ESC.

Em algumas situações podemos querer saber o valor atual da propriedade EditMode. Isso pode ser feita assim:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

string modoEdicao = dataGridView1.EditMode.ToString();
MessageBox.Show("O modo de edição é: " + modoEdicao);

Se quisermos comparar o valor da propriedade EditMode com um dos valores da enumeração DataGridViewEditMode podemos usar um código semelhante a:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

if(dataGridView1.EditMode == 
    DataGridViewEditMode.EditOnKeystroke){
  MessageBox.Show("O modo de edição é EditOnKeystroke");
}
else{
  MessageBox.Show("O modo de edição NÃO é EditOnKeystroke");
}


Link para compartilhar na Internet ou com seus amigos:

C# ::: Dicas & Truques ::: Matemática e Estatística

Como calcular porcentagem em C# - Como efetuar cálculos de porcentagem em C#

Quantidade de visualizações: 34821 vezes
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em C#.

Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas.

Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor, percentual, valor_final;

      valor = 178.00; // valor original
      percentual = 15.0 / 100.0; // 15%
      valor_final = valor + (percentual * valor);

      // mostra o resultado
      Console.WriteLine("O valor final do produto é: " + valor_final);

      // O resultado será 204,70
      
      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor, percentual, valor_final;

      valor = 250.00; // valor original
      percentual = 8.0 / 100.0; // 8%
      valor_final = valor - (percentual * valor);

      // mostra o resultado
      Console.WriteLine("O valor final do produto é: " + valor_final);

      // O resultado será 230,00

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double perguntas, acertos;

      perguntas = 90.0;
      acertos = 72.0;

      // mostra a porcentagem de acertos
      Console.WriteLine("Porcentagem de acertos: " +
        ((acertos / perguntas) * 100) + "%");

      // mostra a porcentagem de erros
      Console.WriteLine(("Porcentagem de erros: ") +
        (((perguntas - acertos) / perguntas) * 100) + "%");

      // Os resultados serão 80% e 20%

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor_anterior, novo_valor, porcentagem_lucro;

      valor_anterior = 300.0; // valor anterior
      novo_valor = 340.0; // valor novo

      // calcula a porcentagem de lucro
      // efetua o cálculo
      porcentagem_lucro = ((novo_valor * 100) / valor_anterior) - 100;

      Console.WriteLine("A porcentagem de lucro foi de: " +
        porcentagem_lucro + "%");

      // O resultado será 13,33

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor, percentual, comissao;

      valor = 70.0; // valor do produto
      percentual = 5.0 / 100.0; // 5%

      // calcula a comissão
      comissao = percentual * valor;

      // mostra o resultado
      Console.WriteLine("O valor repassado ao vendedor é: " + comissao);

      // O resultado será 3,5

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}



C# ::: Dicas & Truques ::: Rotinas de Conversão

Como converter um tipo string para um tipo decimal em C# usando o método Parse() da classe Decimal

Quantidade de visualizações: 12542 vezes
Este exemplo mostra como converter uma string em um valor do tipo decimal. Para isso nós vamos usar o método Parse() da classe Decimal da linguagem C#. No entanto, é preciso termos cuidado, pois este método pode lançar três tipos de exceções: ArgumentNullException, FormatException e OverflowException.

Veja o trecho de código a seguir:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      string valor_string = "530,54";
      // experimente com os valores "23,5", "arquivo" e
      // "659"

      // tenta efetuar a conversão de string para decimal
      try {
        decimal valor_decimal = decimal.Parse(valor_string);
        // exibe o resultado
        Console.WriteLine("Valor convertido com sucesso: " + valor_decimal);
      }
      catch (FormatException e) {
        // exibe a informações sobre a exceção
        // Input string was not in a correct format. 
        Console.WriteLine(e.Message);
      }

      Console.WriteLine("\n\nPressione qualquer tecla para sair...");
      // pausa o programa
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Valor convertido com sucesso: 530,54

Se tentarmos atribuir um valor string a um tipo decimal, sem efetuar a conversão, teremos o seguinte erro de compilação:

Cannot implicitly convert type string to decimal


C# ::: Windows Forms ::: DataGridView

Como retornar a célula atual em um DataGridView do C# Windows Forms como um objeto da classe DataGridViewCell

Quantidade de visualizações: 12827 vezes
A célula atual de um DataGridView pode ser obtida por meio da propriedade CurrentCell. Esta propriedade retorna um objeto da classe DataGridViewCell. Por meio de propriedades e métodos desta classe podemos obter os índices da coluna e da linha às quais a célula pertence, seu valor, estilo, etc.

Veja um trecho de código no qual obtemos o valor da célula atual de um DataGridView:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button3_Click(object sender, EventArgs e){
  // vamos obter a célula atual (que possui o foco)
  DataGridViewCell celulaAtual = dataGridView1.CurrentCell;

  // vamos exibir o valor da célula atual
  string valor = celulaAtual.Value.ToString();
  MessageBox.Show("O valor da célula atual é: "
    + valor);
}

Se não houver célula atual no DataGridView, o retorno da propriedade CurrentCell será null.


Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 46 usuários muito felizes estudando em nosso site.