Aracılığıyla paylaş


DataGridViewCellParsingEventHandler Temsilci

Tanım

bir olayını DataGridViewişleyecek CellParsing yöntemi temsil eder.

public delegate void DataGridViewCellParsingEventHandler(System::Object ^ sender, DataGridViewCellParsingEventArgs ^ e);
public delegate void DataGridViewCellParsingEventHandler(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)

Parametreler

sender
Object

Olayın kaynağı.

Örnekler

Aşağıdaki kod örneği, tarih girdilerinin geçerliliğini denetlemek için kullanma DataGridViewCellParsingEventHandler işlemini gösterir.

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

Açıklamalar

CellParsing Kullanıcı tarafından belirtilen bir değerden hücre ValueType özelliği tarafından belirtilen türdeki bir değere özel değer dönüştürmesi sağlamak için olayı işleyebilir.

Olayı işlerken CellParsing , değeri kendiniz dönüştürebilir veya varsayılan dönüştürmeyi özelleştirebilirsiniz. Örneğin, seçtiğiniz tür dönüştürücüleriyle hücre ParseFormattedValue yöntemini kullanarak değeri kendiniz dönüştürebilirsiniz. Alternatif olarak, varsayılan tür dönüştürücülerinin değeri ayrıştırmasına izin verebilir, ancak hücre InheritedStyle özelliği kullanılarak başlatılan özelliği tarafından döndürülen nesnenin DataGridViewCellParsingEventArgs.InheritedCellStyle , DataSourceNullValueve FormatProvider özelliklerini değiştirebilirsinizNullValue.

Değeri kendiniz dönüştürdüğünüzde, özelliğin ilk, biçimlendirilmiş değerini ConvertEventArgs.Value hücre ValueType özelliği tarafından belirtilen türdeki dönüştürülmüş değerle değiştirin. Başka ayrıştırma gerekli olmadığını belirtmek için özelliğini olarak trueayarlayınDataGridViewCellParsingEventArgs.ParsingApplied.

Olay işleyicisi tamamlandığında, değeri doğru türdeyse Valuenull veya değilse veya ParsingApplied özelliği isefalseValue, varsayılan tür dönüştürücüleriyle hücre ParseFormattedValue yöntemi kullanılarak ayrıştırılır. Bu yöntemin varsayılan uygulaması, geçirilen hücre stilinin NullValue, DataSourceNullValueve FormatProvider özelliklerini kullanarak değeri ayrıştırıyor. Değer değerine eşit NullValuedeğilse, değer özelliği ve geçirilen tür dönüştürücüleri kullanılarak FormatProvider ayrıştırılır.

Bir hücre değerinin görüntülenmek üzere biçimlendirilmiş bir değere dönüştürülmesini özelleştirmek için olayı işleyebilirsiniz CellFormatting .

Olayları işleme hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.

Bir DataGridViewCellParsingEventHandler temsilci oluşturduğunuzda, olayı işleyecek yöntemi tanımlarsınız. Olayı olay işleyicinizle ilişkilendirmek için olaya temsilcinin bir örneğini ekleyin. Olay her gerçekleştiğinde, olay işleyici (siz temsilciyi kaldırmadığınız sürece) çağrılır. Olay işleyici temsilcileri hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.

Uzantı Metotları

GetMethodInfo(Delegate)

Belirtilen temsilci tarafından temsil edilen yöntemi temsil eden bir nesnesi alır.

Şunlara uygulanır

Ayrıca bkz.