Наличие DataGridView (4 столбца), который не связан ни с одним набором данных; то есть сетка существует только для того, чтобы выглядеть как Excel; Я попытался отформатировать последние два столбца в валюте. Я гуглил и искал переполнение стека; пытался this.dataGridView.Columns[3].DefaultCellStyle.Format = "N2";
, et c, но это не сработало (или, может быть, я делаю что-то не так).
То, что я пытаюсь достичь, это, PICTURE REDEFINES
тип поведения в COBOL
, вроде; когда я набираю 1234,56 и покидаю ячейку, он автоматически конвертируется в 1 234,56.
Кстати, есть ли способ назначить этим отдельным столбцам принимать только цифры c, имея нажатая клавиша A
подаст только звуковой сигнал, но 5
, .
, +
et c напечатает?
Это мой пример кода:
// definition up somewhere
private DataGridView dataGridView = null;
private void SetupDataGrid()
{
this.dataGridView = new DataGridView
{
...
ColumnCount = 4,
...
};
this.dataGridView.ScrollBars = ScrollBars.Vertical;
this.dataGridView.RowHeadersVisible = false;
this.dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
this.dataGridView.Columns[0].Width = Convert.ToInt32(this.dataGridView.Width * 0.20);
this.dataGridView.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
this.dataGridView.Columns[2].Width = Convert.ToInt32(this.dataGridView.Width * 0.20);
this.dataGridView.Columns[3].Width = Convert.ToInt32(this.dataGridView.Width * 0.20);
this.dataGridView.Columns[0].ReadOnly = true;
this.dataGridView.Columns[1].ReadOnly = true;
this.dataGridView.Columns[2].DefaultCellStyle.Format = "N2";
this.dataGridView.Columns[3].DefaultCellStyle.Format = "N2";
this.dataGridView.KeyDown += this.Form_KeyDown;
this.Controls.Add(this.dataGridView);
return;
}