Share via


DataGridViewCell.FormattedValue Özellik

Tanım

Hücrenin değerini görüntüleme için biçimlendirilmiş olarak alır.

public:
 property System::Object ^ FormattedValue { System::Object ^ get(); };
[System.ComponentModel.Browsable(false)]
public object FormattedValue { get; }
[System.ComponentModel.Browsable(false)]
public object? FormattedValue { get; }
[<System.ComponentModel.Browsable(false)>]
member this.FormattedValue : obj
Public ReadOnly Property FormattedValue As Object

Özellik Değeri

Hücrenin biçimlendirilmiş değeri veya null hücre bir DataGridView denetime ait değilse.

Öznitelikler

Özel durumlar

ColumnIndex 0'dan küçüktür ve hücrenin bir satır üst bilgi hücresi olduğunu gösterir.

Hücreyi içeren satır paylaşılan bir satırdır.

-veya-

Hücre bir sütun üst bilgi hücresidir.

Biçimlendirme başarısız oldu ve denetimin DataErrorDataGridView olayı için işleyici yok veya işleyici özelliğini olarak trueayarladıThrowException. Özel durum nesnesi genellikle türüne FormatExceptionyayınlanabilir.

Örnekler

Aşağıdaki kod örneği özelliğinin FormattedValue nasıl kullanılacağını gösterir. Bu örnekte özelliği, IsCurrentCellDirty geçerli hücrenin içeriğinin düzenlenip düzenlenmediğini ve işlenmediğini belirlemek için kullanılır ve hücre değiştirilmişse kullanılır FormattedValue . Bu örnek, olayda DataGridView.SelectionChanged kullanılabilen daha büyük bir örneğin parçasıdır.

private void UpdateLabelText()
{
    int WithdrawalTotal = 0;
    int DepositTotal = 0;
    int SelectedCellTotal = 0;
    int counter;

    // Iterate through all the rows and sum up the appropriate columns.
    for (counter = 0; counter < (DataGridView1.Rows.Count);
        counter++)
    {
        if (DataGridView1.Rows[counter].Cells["Withdrawals"].Value
            != null)
        {
            if (DataGridView1.Rows[counter].
                Cells["Withdrawals"].Value.ToString().Length != 0)
            {
                WithdrawalTotal += int.Parse(DataGridView1.Rows[counter].
                    Cells["Withdrawals"].Value.ToString());
            }
        }

        if (DataGridView1.Rows[counter].Cells["Deposits"].Value != null)
        {
            if (DataGridView1.Rows[counter]
                .Cells["Deposits"].Value.ToString().Length != 0)
            {
                DepositTotal += int.Parse(DataGridView1.Rows[counter]
                    .Cells["Deposits"].Value.ToString());
            }
        }
    }

    // Iterate through the SelectedCells collection and sum up the values.
    for (counter = 0;
        counter < (DataGridView1.SelectedCells.Count); counter++)
    {
        if (DataGridView1.SelectedCells[counter].FormattedValueType ==
            Type.GetType("System.String"))
        {
            string value = null;

            // If the cell contains a value that has not been commited,
            // use the modified value.
            if (DataGridView1.IsCurrentCellDirty == true)
            {

                value = DataGridView1.SelectedCells[counter]
                    .EditedFormattedValue.ToString();
            }
            else
            {
                value = DataGridView1.SelectedCells[counter]
                    .FormattedValue.ToString();
            }
            if (value != null)
            {
                // Ignore cells in the Description column.
                if (DataGridView1.SelectedCells[counter].ColumnIndex !=
                    DataGridView1.Columns["Description"].Index)
                {
                    if (value.Length != 0)
                    {
                        SelectedCellTotal += int.Parse(value);
                    }
                }
            }
        }
    }

    // Set the labels to reflect the current state of the DataGridView.
    Label1.Text = "Withdrawals Total: " + WithdrawalTotal.ToString();
    Label2.Text = "Deposits Total: " + DepositTotal.ToString();
    Label3.Text = "Selected Cells Total: " + SelectedCellTotal.ToString();
    Label4.Text = "Total entries: " + DataGridView1.RowCount.ToString();
}
Private Sub UpdateLabelText()
    Dim WithdrawalTotal As Integer = 0
    Dim DepositTotal As Integer = 0
    Dim SelectedCellTotal As Integer = 0
    Dim counter As Integer

    ' Iterate through all the rows and sum up the appropriate columns.
    For counter = 0 To (DataGridView1.Rows.Count - 1)
        If Not DataGridView1.Rows(counter) _
            .Cells("Withdrawals").Value Is Nothing Then

            If Not DataGridView1.Rows(counter) _
                .Cells("Withdrawals").Value.ToString().Length = 0 Then

                WithdrawalTotal += _
                    Integer.Parse(DataGridView1.Rows(counter) _
                    .Cells("Withdrawals").Value.ToString())
            End If
        End If

        If Not DataGridView1.Rows(counter) _
            .Cells("Deposits").Value Is Nothing Then

            If Not DataGridView1.Rows(counter) _
                .Cells("Deposits").Value.ToString().Length = 0 Then

                DepositTotal += _
                    Integer.Parse(DataGridView1.Rows(counter) _
                    .Cells("Deposits").Value.ToString())
            End If
        End If
    Next

    ' Iterate through the SelectedCells collection and sum up the values.
    For counter = 0 To (DataGridView1.SelectedCells.Count - 1)
        If DataGridView1.SelectedCells(counter).FormattedValueType Is _
        Type.GetType("System.String") Then

            Dim value As String = Nothing

            ' If the cell contains a value that has not been commited,
            ' use the modified value.
            If (DataGridView1.IsCurrentCellDirty = True) Then

                value = DataGridView1.SelectedCells(counter) _
                    .EditedFormattedValue.ToString()
            Else

                value = DataGridView1.SelectedCells(counter) _
                    .FormattedValue.ToString()
            End If

            If value IsNot Nothing Then

                ' Ignore cells in the Description column.
                If Not DataGridView1.SelectedCells(counter).ColumnIndex = _
                    DataGridView1.Columns("Description").Index Then

                    If Not value.Length = 0 Then
                        SelectedCellTotal += Integer.Parse(value)
                    End If
                End If
            End If
        End If

    Next

    ' Set the labels to reflect the current state of the DataGridView.
    Label1.Text = "Withdrawals Total: " & WithdrawalTotal.ToString()
    Label2.Text = "Deposits Total: " & DepositTotal.ToString()
    Label3.Text = "Selected Cells Total: " & SelectedCellTotal.ToString()
    Label4.Text = "Total entries: " & DataGridView1.RowCount.ToString()
End Sub

Açıklamalar

Value özelliği hücre tarafından kapsanan gerçek veri nesnesiyken, FormattedValue bu nesnenin biçimlendirilmiş gösterimidir. ValueType ve FormattedValueType özellikleri sırasıyla bu değerlerin veri türlerine karşılık gelir.

Bu özelliğin değerini almak, hücre değerini özelliği tarafından FormattedValueType belirtilen türdeki eşdeğer bir görüntüleme değerine dönüştürmek için yöntemini çağırırGetFormattedValue. Bu, değer dönüştürmeyi DataGridView.CellFormatting özelleştirmek için işleyebileceğiniz olayı tetikler.

Biçimlendirme başarısız olursa, DataGridView.DataError olay gerçekleşir. Bu olay için işleyici yoksa veya işleyici özelliğini olarak trueayarlarsaDataGridViewDataErrorEventArgs.ThrowException, bir özel durum oluşturulur.

Şunlara uygulanır

Ayrıca bkz.