настраиваемый десятичный формат ввода в столбце DataGridView - PullRequest
0 голосов
/ 02 декабря 2011

У меня есть приложение, которое позволяет пользователю вводить десятичные значения, такие как 00.000, 00.00, 0000.0 и т. Д.

Проблема в том, что разным пользователям требуются разные форматы, и я хотел бы предложить функцию для настройки этого формата ввода для конечных пользователей (например, шаблона ввода или маски).

Как вы думаете, что является лучшим подходом для достижения этой цели?

Ответы [ 2 ]

0 голосов
/ 02 декабря 2011

/ * почему бы не создать свой собственный метод, который проверяет длину формата и делает что-то подобное в качестве отправной точки.

Допустим, пользователь, набравший следующее //, заменил следующее на то, что выпроверка против ввода текстового поля.// Это то, что я быстро написал, чтобы проверить текст, который я передаю.* /

   tmpStringTest+= FormatNumberWithCommas(100.ToString()) + " ";
   tmpStringTest += FormatNumberWithCommas(1000.ToString());
   tmpStringTest += FormatNumberWithCommas(10000.ToString());
   tmpStringTest += FormatNumberWithCommas(100000.ToString());
   tmpStringTest += FormatNumberWithCommas(1000000.ToString());

   public static string FormatNumberWithCommas(string inputString)
   {
       string tempString;
       tempString = string.Format("{0:##,###,###}", Convert.ToInt32(inputString));
       return tempString;
   }
0 голосов
/ 02 декабря 2011

Вы можете реализовать пользовательский IFormatProvider и использовать метод the Parse(string, IFormatProvider), чтобы определить, как будут обрабатываться десятичные числа.

См. http://msdn.microsoft.com/de-de/library/t7xswkc6.aspx fpr Описание метода

См. http://www.codeproject.com/KB/cs/custstrformat.aspx для учебника

...