C# 在gridview中设置十进制值的格式

C# 在gridview中设置十进制值的格式,c#,asp.net,gridview,C#,Asp.net,Gridview,我的Gridview中有一个绑定字段,它从数据库表中获取其值 我已经得到了数据,但不知道如何在gridview中格式化它 例如,我从下面获得总数据,如“123456”,但我想显示为“123456” 我该怎么做?是否需要将绑定字段转换为模板字段?但那之后我该怎么办呢 请帮忙 我使用了DataFormatString=“{0:n0}”,它解决了上述问题 我该怎么做: <asp:TemplateField HeaderText="Failed Files" Sort

我的Gridview中有一个绑定字段,它从数据库表中获取其值

我已经得到了数据,但不知道如何在gridview中格式化它

例如,我从下面获得总数据,如“123456”,但我想显示为“123456”


我该怎么做?是否需要将绑定字段转换为模板字段?但那之后我该怎么办呢

请帮忙

我使用了DataFormatString=“{0:n0}”,它解决了上述问题

我该怎么做:

<asp:TemplateField HeaderText="Failed Files" 
            SortExpression="NumFailed">
            <ItemTemplate>
             <asp:Image ID="Image2" runat="server" ImageUrl="~/NewFolder1/warning_16x16.gif" />
                <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# "GetFilesFailed.aspx?id="+Eval("MachineID") %>' Text='<%# Bind("NumFailedFiles") %>'></asp:HyperLink>
            </ItemTemplate>
        </asp:TemplateField>


超链接中有需要格式化的编号…

我想您需要看看这篇MSDN文章,内容是关于使用DataFormat属性:

<asp:BoundField DataField="totaldata" HeaderText="Total Data"  
     ReadOnly="True" SortExpression="totaldata" DataFormatString="{0:n3}" />

编辑:对于问题的第二部分,使用Eval方法的第二个参数格式化数据:

<%# Eval("NumFailedFiles", "{0:n3}") %>

然后,您的模板将如下所示:

<asp:TemplateField HeaderText="Failed Files" 
    SortExpression="NumFailed">
    <ItemTemplate>
     <asp:Image ID="Image2" runat="server" 
         ImageUrl="~/NewFolder1/warning_16x16.gif" />
        <asp:HyperLink ID="HyperLink1" runat="server" 
                 NavigateUrl='<%# "GetFilesFailed.aspx?id="+Eval("MachineID") %>' 
                 Text='<%# Eval("NumFailedFiles", "{0:n3}") %>'></asp:HyperLink>
    </ItemTemplate>
</asp:TemplateField>

关于如何做到这一点的几种方法

选项1

<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# "GetFilesFailed.aspx?id="+Eval("MachineID") %>' Text='<%# Bind("NumFailedFiles","{0:n0}") %>'></asp:HyperLink>
并在您的aspx页面中调用该方法,如下所示:

<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# "GetFilesFailed.aspx?  id="+Eval("MachineID") %>' Text='<%#GetFormatedNumber(Eval("NumFailedFiles")) %>'></asp:HyperLink>

如果要在gridview上格式化数据,请使用“{0:n3}”


这是正确的,但我只是修改了一点DataFormatString=“{0:n0}”,只是为了删除小数点。。。。但我有一个问题,请帮助我,我已经在我的问题中添加了它
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# "GetFilesFailed.aspx?  id="+Eval("MachineID") %>' Text='<%# Bind("NumFailedFiles").ToString("N") %>'></asp:HyperLink>
 protected string GetFormatedNumber(object number)   
 {  
   if ( number != null )  
       {  
          return number.ToString("N");  
       }  
       return "0";   
 }  
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# "GetFilesFailed.aspx?  id="+Eval("MachineID") %>' Text='<%#GetFormatedNumber(Eval("NumFailedFiles")) %>'></asp:HyperLink>
 <asp:Label ID="label" runat="server" Visible="true" Text='<%#DataBinder.Eval(Container.DataItem, "data","{0:n3}") %>'></asp:Label>