Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Evento DataGridView.RowValidating

 

Ocorre quando uma linha está sendo validada.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (em System.Windows.Forms.dll)

public event DataGridViewCellCancelEventHandler RowValidating

Este evento é análogo ao Control.Validating evento.Use este evento para realizar a validação em todos os valores de uma linha.Se a linha não passar na validação, defina a CancelEventArgs.Cancel propriedade true.O cancelamento deste evento impede o RowValidated, Control.Validating, e Control.Validated eventos ocorra e também impede que o usuário deixar a linha inválida e impede que a linha salva em uma fonte de dados externa no modo de dados associado.

Para obter mais informações sobre tratamento de eventos, consulte Consumindo Eventos.

O seguinte exemplo de código usa RowValidating para verificar se rastrear válido e datas de lançamento são inseridas.

  private void ValidateByRow(Object sender, 
      DataGridViewCellCancelEventArgs data) 
  {
      DataGridViewRow row = 
          songsDataGridView.Rows[data.RowIndex];
      DataGridViewCell trackCell = 
          row.Cells[songsDataGridView.Columns["Track"].Index];
      DataGridViewCell dateCell = 
          row.Cells[songsDataGridView.Columns["Release Date"].Index];
      data.Cancel = !(IsTrackGood(trackCell) && IsDateGood(dateCell));
  }

  private Boolean IsTrackGood(DataGridViewCell cell)
  {
      Int32 cellValueAsInt;
      if (cell.Value.ToString().Length == 0)
{
          cell.ErrorText = "Please enter a track";
          songsDataGridView.Rows[cell.RowIndex].ErrorText = 
              "Please enter a track";
          return false;
      }
      else if (cell.Value.ToString().Equals("0"))
      {
          cell.ErrorText = "Zero is not a valid track";
          songsDataGridView.Rows[cell.RowIndex].ErrorText =
              "Zero is not a valid track";
          return false;
      }
      else if (!Int32.TryParse(cell.Value.ToString(), out cellValueAsInt))
      {
          cell.ErrorText = "A Track must be a number";
          songsDataGridView.Rows[cell.RowIndex].ErrorText =
              "A Track must be a number";
          return false;
      }
      return true;
  }

  private Boolean IsDateGood(DataGridViewCell cell) 
  {
      if (cell.Value == null)
{
          cell.ErrorText = "Missing date";
          songsDataGridView.Rows[cell.RowIndex].ErrorText = 
              "Missing date";
          return false;
      }
      else
      {
          try
          {
              DateTime.Parse(cell.Value.ToString());
          }
          catch (FormatException)
          {
              cell.ErrorText = "Invalid format";
              songsDataGridView.Rows[cell.RowIndex].ErrorText = 
                  "Invalid format";

              return false;
          }
      }
      return true;
  }

.NET Framework
Disponível desde 2.0
Retornar ao topo
Mostrar: