DataGridViewTextBoxColumn добавить запятые в числовой ячейке - PullRequest
2 голосов
/ 14 декабря 2011

Как можно, чтобы моя сетка данных автоматически добавляла запятые в ячейку для форматирования чисел. Я попытался изменить формат стандартного стиля ячейки на числовой, но это не помогло.

Я ищу что-то вроде

пользователь вводит 503412,45

Отображаемое число меняется на 503,412.45

ОБНОВЛЕНИЕ : Я установил формат столбца во время разработки (через окно свойств в VS). Это не связано с данными, пользователи вручную добавляют строки. Столбцы также создаются во время разработки с помощью параметра Коллекции в окне свойств

Ответы [ 2 ]

4 голосов
/ 14 декабря 2011

Установка DefaultCellStyle.Format на «N2» сделает это.

dataGridView1.Columns.Add("foo", "foo");
dataGridView1.Columns[0].DefaultCellStyle.Format = "N2";
dataGridView1.Rows.Add(1234.567); // shows 1,234.57

Я не могу догадаться, почему это не работает для вас без более подробной информации, поэтому все, что я могу предложить, это то, что вы думаете , что вы установили, но на самом деле это не так,Вы используете привязку данных?Как вы добавляете столбцы?Они генерируются автоматически?Вы устанавливаете формат во время разработки или выполнения?

2 голосов
/ 14 декабря 2011

Чтобы сделать вывод вашего решения независимым от культуры текущего потока (десятичный разделитель чисел, разделитель групп чисел), вы должны установить поставщик формата для столбца:

CultureInfo ci = CultureInfo.CreateSpecificCulture("en-US");

dataGridView1.Columns[0].ValueType = typeof(decimal);
dataGridView1.Columns[0].DefaultCellStyle.FormatProvider = ci;
dataGridView1.Columns[0].DefaultCellStyle.Format = "N2";

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...