Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在gridview asp.net中显示百分号_C#_Asp.net_Gridview - Fatal编程技术网

C# 如何在gridview asp.net中显示百分号

C# 如何在gridview asp.net中显示百分号,c#,asp.net,gridview,C#,Asp.net,Gridview,列的数据类型为decimal(5,2),我希望在gridview中显示它,如下所示: 10% or 5% or 18% etc. 但它现在在我的gridview中显示如下: 10% or 5% or 18% etc. 400.00%,但应该是这样的4% <asp:BoundField DataField="Tot_Perc" DataFormatString="{0:P}" HeaderText="Total%" HtmlEncode="true" /> 我做错了什么?谢

列的数据类型为decimal(5,2),我希望在gridview中显示它,如下所示:

10% or 5% or 18% etc.
但它现在在我的gridview中显示如下:

10% or 5% or 18% etc.
400.00%,但应该是这样的4%

 <asp:BoundField DataField="Tot_Perc" DataFormatString="{0:P}" HeaderText="Total%" HtmlEncode="true" />


我做错了什么?谢谢

您应该有
DataFormatString=“{0:0}%”

如果需要两位小数,可以使用
DataFormatString=“{0:0.00}%”



正如@adrianbanks提到的,
DataFormatString=“{0:P0}”
格式将数字乘以100。。。因此,您可以考虑将百分比存储为<代码>十进制(5,4)< /代码>(存储50%为0.5,25%为0.25),然后您可以按预期使用<代码> DATAFALATATSUTS=“{ 0:P0}”< /代码>。< /P> < P> >您应该有<代码> DATAFATATSt= =“{0:0}%”< /C>>/P> 如果需要两位小数,可以使用
DataFormatString=“{0:0.00}%”



正如@adrianbanks提到的,
DataFormatString=“{0:P0}”
格式将数字乘以100。。。因此,您可以考虑将您的百分比存储为<代码>十进制(5,4)< /代码>(存储50%为0.5,25%为0.25),然后可以使用<代码> DATAFALATATString=“{0:P0}”< /> >预期。

< P>使用“<代码> { 0:P} < /Cord>格式字符串,根据<强>将数字乘以100 < /String >并添加百分号。这就是为什么显示的号码是错误的


要按需要格式化,请使用
{0:N0}
并手动添加百分号。这将十进制设置为一个简单的数字,小数位数为零。

您使用的是
{0:p}
格式字符串,它根据将数字乘以100并添加百分号。这就是为什么显示的号码是错误的


要按需要格式化,请使用
{0:N0}
并手动添加百分号。这将十进制设置为一个简单的数字,小数位数为零。

DataFormatString=“{0:P0}”
不起作用,因为数字仍然乘以100。您是对的。。。我编辑了我的答案以突出显示更改基础列数据类型的选项。
DataFormatString=“{0:P0}”
不起作用,因为数字仍然乘以100。你说得对。。。我编辑了我的答案,以突出显示更改基础列数据类型的选项。