我在C#中使用基本的Price和Quantity列创建了一个datagridview。但是我希望价格列显示为小数和美元符号。我在网上搜索并尝试将该列的格式样式设置为" c"但它似乎没有改变任何东西的显示。
最后,我希望数量列仅限于数字。我试图找出一种方法来验证输入,但不清楚如何正确地这样做。希望有人可以提供帮助。我在下面附上了我的文件。我知道这可能看起来像一个相当基本的问题,但是我一直在努力寻找网上的答案,部分原因是我不知道在哪里实施一些建议我见过有人做过。我希望你们能帮忙。我非常感激。
如果有帮助,这是c#项目解决方案。这里没什么特别的。 https://dl.dropboxusercontent.com/u/2471262/catalog.zip
答案 0 :(得分:1)
如何在该列的结构中包装货币值?
struct Currency
{
float val;
public Currency(float v) { val = v; }
public static implicit operator float(Currency c)
{ return c.val; }
public static implicit operator Currency(float c)
{ return new Currency(c); }
public override string ToString()
{ return val.ToString("c2"); }
}
与float
100%可互换。只需将值传递到DataGridView
,例如:
dataGridView1[column, row].Value = new Currency(value);