1

整数を表示するテキスト datagridviewcolumn があります。
format プロパティを に設定しましたcolTextDefaultCellStyle.Format = "#,##0";

そのため、表示される数字には千区切りが付きます。

編集モードでは、千区切りを表示したくありません。
しかし、私はそれを行う方法を理解できません。この例は機能しません:

void dgv_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    DataGridViewCell cell = dgv.Rows[e.RowIndex].Cells[e.ColumnIndex];

    if (e.ColumnIndex == colText.Index)
    {
        if (cell.IsInEditMode) cell.Style.Format = "";
        else cell.Style.Format = "#,##0";
    }
}
4

1 に答える 1

3

e.FormattingApplied実際のフォーマットを適用してから、Trueに設定する必要があります。

void dgv_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    if (e.ColumnIndex == colText.Index)
    {
        DataGridViewCell cell = dgv.Item[e.ColumnIndex, e.RowIndex];

        if (cell.IsInEditMode)
        {
            e.Value = e.Value.ToString();
        }
        else
        {
            e.Value = e.Value.ToString("#,##0");
        }
        e.FormattingApplied = true;
    }
}
于 2014-10-10T19:47:49.023 に答える