C# 为什么Dataformatstring属性未应用于我的网格?

C# 为什么Dataformatstring属性未应用于我的网格?,c#,asp.net,gridview,datagridview,webforms,C#,Asp.net,Gridview,Datagridview,Webforms,我正在尝试在网格中应用BoundField列的DataFormatString属性。我是从代码后面做这件事的,因为我希望DataFormatString值是可配置的 我已经在我的应用程序的其他页面的一些网格上应用了它 但是我无法找到为什么我的页面中的这个网格与其他页面中的相同asp网格不起作用的原因 这是我的aspx <asp:GridView ID="GridViewYearWiseData" runat="server" CellPadding="2" AllowSorting="fa

我正在尝试在网格中应用BoundField列的DataFormatString属性。我是从代码后面做这件事的,因为我希望DataFormatString值是可配置的

我已经在我的应用程序的其他页面的一些网格上应用了它

但是我无法找到为什么我的页面中的这个网格与其他页面中的相同asp网格不起作用的原因

这是我的aspx

<asp:GridView ID="GridViewYearWiseData" runat="server" CellPadding="2" AllowSorting="false"
                                                    SkinID="GridviewSkin" ViewStateMode="Enabled" ShowHeader="True" AutoGenerateColumns="false"
                                                    AllowPaging="false" Width="250px" Height="99%" GridLines="None"
                                                    ShowFooter="false" EmptyDataText="No Data Found."
                                                    ShowHeaderWhenEmpty="True" HeaderStyle-Height="30px" RowStyle-Height="25px" OnDataBound="GridViewYearWiseData_DataBound" OnSelectedIndexChanged="GridViewYearWiseData_SelectedIndexChanged"
                                                    BorderStyle="None">

<Columns>
<asp:TemplateField HeaderText="Duration" ItemStyle-HorizontalAlign="Center" HeaderStyle-HorizontalAlign="Center">
  <ItemTemplate>
    <asp:LinkButton ID="LinkButtonRange" runat="server" Text='<%# Eval("Duration") %>' CommandName="Select"> </asp:LinkButton>
     <input type="hidden" id="FromMonth" value='<%# Eval("FromMonth") %>' runat="server" />
     <input type="hidden" id="ToMonth" value='<%# Eval("ToMonth") %>' runat="server" />
 </ItemTemplate>
</asp:TemplateField>

<asp:BoundField DataField="value1" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" HeaderStyle-HorizontalAlign="Center" />

<asp:BoundField DataField="value2" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" HeaderStyle-HorizontalAlign="Center" />
</Columns>
<HeaderStyle HorizontalAlign="Center" />
<PagerSettings FirstPageText="First" LastPageText="Last" Mode="NextPreviousFirstLast" NextPageText="Next" PageButtonCount="4" PreviousPageText="Previous" />
</asp:GridView> 
这是我的数据源


关于哪里出错有什么想法吗?

我首先检查value1和value2在绑定源中是否具有数字数据类型。@Alex是的,这些值仅为数字类型。我已经用数据源的屏幕截图更新了我的问题。
protected void GridViewYearWiseData_DataBound(object sender, EventArgs e)
    {
        var currentMethod = (new System.Diagnostics.StackFrame()).GetMethod().Name;
        log.Info(AppConstants.StrStart + currentMethod);
        try
        {

            GridRoundoffDecimal =Convert.ToInt32(resXResourceSet.GetString("GridMaxDecimals"));//Line of code to get from the database, the number of decimals to be displayed in the grid after the decimal point
            System.Web.UI.WebControls.GridView grid = (System.Web.UI.WebControls.GridView)sender;
            BoundField col1 = (BoundField)grid.Columns[1];
            BoundField col2 = (BoundField)grid.Columns[2];

            col1.DataFormatString = "{0:N" + GridRoundoffDecimal + "}";
            col2.DataFormatString = "{0:N" + GridRoundoffDecimal + "}";
        }
        catch (Exception ex)
        {
            ScriptManager.RegisterStartupScript(this, typeof(Page), mLiquidateMain.GlobalConstants.script, mLiquidateMain.GlobalConstants.alertOf + GetErrorMessage(ex.Message) + "\");", true);
            log.Error(ex.Message, ex);
        }
        finally
        {
            log.Info(AppConstants.StrEnd + currentMethod);
        }
    }