DataGridViewCellParsingEventHandler Delegato

Definizione

Rappresenta il metodo che gestirà l'evento CellParsing di un oggetto DataGridView.Represents the method that will handle a CellParsing event of a DataGridView.

public delegate void DataGridViewCellParsingEventHandler(System::Object ^ sender, DataGridViewCellParsingEventArgs ^ e);
public delegate void DataGridViewCellParsingEventHandler(object sender, DataGridViewCellParsingEventArgs e);
type DataGridViewCellParsingEventHandler = delegate of obj * DataGridViewCellParsingEventArgs -> unit
Public Delegate Sub DataGridViewCellParsingEventHandler(sender As Object, e As DataGridViewCellParsingEventArgs)

Parametri

sender
Object

Origine dell'evento.The source of the event.

e
DataGridViewCellParsingEventArgs

Oggetto DataGridViewCellParsingEventArgs che contiene i dati dell'evento.A DataGridViewCellParsingEventArgs that contains the event data.

Esempio

Nell'esempio di codice riportato di seguito viene illustrato DataGridViewCellParsingEventHandler l'utilizzo di per verificare la validità delle voci di data.The following code example demonstrates using DataGridViewCellParsingEventHandler to check the validity of date entries.

// 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

Commenti

Gestire l' CellParsing evento per fornire la conversione di valori personalizzati da un valore specificato dall'utente a un valore nel tipo specificato dalla proprietà della cella ValueType .Handle the CellParsing event to provide custom value conversion from a user-specified value to a value in the type specified by the cell ValueType property.

Quando si gestisce l' CellParsing evento, è possibile convertire il valore autonomamente oppure personalizzare la conversione predefinita.When you handle the CellParsing event, you can convert the value yourself or you can customize the default conversion. Ad esempio, è possibile convertire il valore autonomamente usando il ParseFormattedValue Metodo Cell con convertitori di tipi di propria scelta.For example, you can convert the value yourself using the cell ParseFormattedValue method with type converters of your choosing. In alternativa, è possibile lasciare che i convertitori di tipi predefiniti analizzino il valore, ma modifichino le NullValue DataSourceNullValue proprietà, e FormatProvider dell'oggetto restituito dalla DataGridViewCellParsingEventArgs.InheritedCellStyle proprietà, che viene inizializzato con la proprietà della cella InheritedStyle .Alternatively, you can let the default type converters parse the value, but modify the NullValue, DataSourceNullValue, and FormatProvider properties of the object returned by the DataGridViewCellParsingEventArgs.InheritedCellStyle property, which is initialized using the cell InheritedStyle property.

Quando si converte il valore autonomamente, sostituire il valore formattato iniziale della ConvertEventArgs.Value proprietà con il valore convertito nel tipo specificato dalla proprietà della cella ValueType .When you convert the value yourself, replace the initial, formatted value of the ConvertEventArgs.Value property with the converted value in the type specified by the cell ValueType property. Per indicare che non è necessaria alcuna ulteriore analisi, impostare la DataGridViewCellParsingEventArgs.ParsingApplied proprietà su true .To indicate that no further parsing is necessary, set the DataGridViewCellParsingEventArgs.ParsingApplied property to true.

Al termine del gestore eventi, se Value è null o non è del tipo corretto oppure la ParsingApplied proprietà è false , Value viene analizzato utilizzando il metodo della cella ParseFormattedValue con convertitori di tipi predefiniti.When the event handler completes, if the Value is null or is not of the correct type, or the ParsingApplied property is false, the Value is parsed using the cell ParseFormattedValue method with default type converters. L'implementazione predefinita di questo metodo analizza il valore utilizzando le NullValue proprietà, DataSourceNullValue e FormatProvider dello stile della cella passato.The default implementation of this method parses the value using the NullValue, DataSourceNullValue, and FormatProvider properties of the cell style passed in. Se il valore non è uguale a NullValue , il valore viene analizzato utilizzando la FormatProvider proprietà e i convertitori di tipi passati.If the value is not equal to NullValue, the value is parsed using the FormatProvider property and the type converters passed in.

Per personalizzare la conversione di un valore di cella in un valore formattato per la visualizzazione, gestire l' CellFormatting evento.To customize the conversion of a cell value into a formatted value for display, handle the CellFormatting event.

Per altre informazioni su come gestire gli eventi, vedere la gestione e generazione di eventi.For more information about how to handle events, see Handling and Raising Events.

Quando si crea un delegato DataGridViewCellParsingEventHandler, si identifica il metodo che gestirà l'evento.When you create a DataGridViewCellParsingEventHandler delegate, you identify the method that will handle the event. Per associare l'evento al gestore eventi in uso, aggiungere all'evento un'istanza del delegato.To associate the event with your event handler, add an instance of the delegate to the event. Il gestore eventi viene chiamato ogni volta che si verifica l'evento, a meno che non venga rimosso il delegato.The event handler is called whenever the event occurs, unless you remove the delegate. Per ulteriori informazioni sui delegati del gestore eventi, vedere gestione e generazione di eventi.For more information about event-handler delegates, see Handling and Raising Events.

Metodi di estensione

GetMethodInfo(Delegate)

Ottiene un oggetto che rappresenta il metodo rappresentato dal delegato specificato.Gets an object that represents the method represented by the specified delegate.

Si applica a

Vedi anche