Sdílet prostřednictvím


DataGridViewCellParsingEventArgs Třída

Definice

Poskytuje data pro CellParsing událost DataGridView ovládacího prvku.

public ref class DataGridViewCellParsingEventArgs : System::Windows::Forms::ConvertEventArgs
public class DataGridViewCellParsingEventArgs : System.Windows.Forms.ConvertEventArgs
type DataGridViewCellParsingEventArgs = class
    inherit ConvertEventArgs
Public Class DataGridViewCellParsingEventArgs
Inherits ConvertEventArgs
Dědičnost
DataGridViewCellParsingEventArgs

Příklady

Následující příklad kódu ukazuje použití DataGridViewCellParsingEventArgs ke kontrole platnosti položek kalendářních dat.

// Handling CellParsing allows one to accept user input, then map it to a different
// internal representation.
void dataGridView1_CellParsing( Object^ /*sender*/, DataGridViewCellParsingEventArgs^ e )
{
   if ( this->dataGridView1->Columns[ e->ColumnIndex ]->Name->Equals( "Release Date" ) )
   {
      if ( e != nullptr )
      {
         if ( e->Value != nullptr )
         {
            try
            {
               // Map what the user typed into UTC.
               e->Value = DateTime::Parse( e->Value->ToString() ).ToUniversalTime();

               // Set the ParsingApplied property to 
               // Show the event is handled.
               e->ParsingApplied = true;
            }
            catch ( FormatException^ /*ex*/ ) 
            {
               // Set to false in case another CellParsing handler
               // wants to try to parse this DataGridViewCellParsingEventArgs instance.
               e->ParsingApplied = false;
            }
         }
      }
   }
}
// Handling CellParsing allows one to accept user input, then map it to a different
// internal representation.
private void dataGridView1_CellParsing(object sender, DataGridViewCellParsingEventArgs e)
{
    if (this.dataGridView1.Columns[e.ColumnIndex].Name == "Release Date")
    {
        if (e != null)
        {
            if (e.Value != null)
            {
                try
                {
                    // Map what the user typed into UTC.
                    e.Value = DateTime.Parse(e.Value.ToString()).ToUniversalTime();
                    // Set the ParsingApplied property to 
                    // Show the event is handled.
                    e.ParsingApplied = true;
                }
                catch (FormatException)
                {
                    // Set to false in case another CellParsing handler
                    // wants to try to parse this DataGridViewCellParsingEventArgs instance.
                    e.ParsingApplied = false;
                }
            }
        }
    }
}
' Handling CellParsing allows one to accept user input, then map it to a different
' internal representation.
Private Sub dataGridView1_CellParsing(ByVal sender As Object, _
    ByVal e As DataGridViewCellParsingEventArgs) _
    Handles dataGridView1.CellParsing

    If Me.dataGridView1.Columns(e.ColumnIndex).Name = _
        "Release Date" Then
        If e IsNot Nothing Then
            If e.Value IsNot Nothing Then
                Try
                    ' Map what the user typed into UTC.
                    e.Value = _
                    DateTime.Parse(e.Value.ToString()).ToUniversalTime()
                    ' Set the ParsingApplied property to 
                    ' Show the event is handled.
                    e.ParsingApplied = True

                Catch ex As FormatException
                    ' Set to false in case another CellParsing handler
                    ' wants to try to parse this DataGridViewCellParsingEventArgs instance.
                    e.ParsingApplied = False
                End Try
            End If
        End If
    End If
End Sub

Poznámky

CellParsing Zpracujte událost tak, aby poskytovala převod vlastní hodnoty z uživatelem zadané hodnoty na hodnotu v typu určeném vlastností buňkyValueType.

Při zpracování CellParsing události můžete hodnotu převést sami nebo můžete přizpůsobit výchozí převod. Hodnotu můžete například převést sami pomocí metody buňky ParseFormattedValue s převaděči typů podle vašeho výběru. Alternativně můžete nechat výchozí převaděče typů parsovat hodnotu, ale upravit , a vlastnosti objektu vráceného DataGridViewCellParsingEventArgs.InheritedCellStyle vlastností, který je inicializován pomocí vlastnosti buňkyInheritedStyle.FormatProviderDataSourceNullValueNullValue

Při převodu hodnoty sami nahraďte počáteční formátovanou hodnotu ConvertEventArgs.Value vlastnosti převedenou hodnotou v typu určeném vlastností buňky ValueType . Chcete-li označit, že žádná další analýza není nutná, nastavte DataGridViewCellParsingEventArgs.ParsingApplied vlastnost na truehodnotu .

Po dokončení obslužné rutiny události, pokud Value je null nebo není správný typ, nebo ParsingApplied je falsevlastnost je , Value je analyzována pomocí metody buňky ParseFormattedValue s výchozími převaděči typů. Výchozí implementace této metody parsuje hodnotu pomocí NullValue, DataSourceNullValuea FormatProvider vlastnosti stylu buňky předané. Pokud hodnota není rovna NullValue, hodnota je analyzována pomocí FormatProvider vlastnosti a převaděče typů předané.

Pokud chcete přizpůsobit převod hodnoty buňky na formátovanou hodnotu pro zobrazení, zpracujte CellFormatting událost.

Další informace o zpracování událostí naleznete v tématu Zpracování a vyvolávání událostí.

Konstruktory

Name Description
DataGridViewCellParsingEventArgs(Int32, Int32, Object, Type, DataGridViewCellStyle)

Inicializuje novou instanci DataGridViewCellParsingEventArgs třídy.

Vlastnosti

Name Description
ColumnIndex

Získá index sloupce dat buňky, která vyžadují analýzu.

DesiredType

Získá datový typ požadované hodnoty.

(Zděděno od ConvertEventArgs)
InheritedCellStyle

Získá nebo nastaví styl použitý na upravenou buňku.

ParsingApplied

Získá nebo nastaví hodnotu označující, zda byla hodnota buňky úspěšně analyzována.

RowIndex

Získá index řádku buňky, která vyžaduje parsování.

Value

Získá nebo nastaví hodnotu ConvertEventArgs.

(Zděděno od ConvertEventArgs)

Metody

Name Description
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také