In default.aspx page, I changed the code like,
<asp:GridView ID="gvCategory" runat="server" BorderWidth="1px" BackColor="#C6DEFF"
Width="100%" BorderStyle="None" BorderColor="#DEBA84" AlternatingRowStyle-BackColor="#A0CFEC"
AutoGenerateColumns="false" OnRowDataBound="GV_OnRowDataBound">
<FooterStyle ForeColor="#8C4510" BackColor="#F7DFB5"></FooterStyle>
<PagerStyle ForeColor="#8C4510" HorizontalAlign="Center"></PagerStyle>
<HeaderStyle ForeColor="White" Font-Bold="True" BackColor=" #15317E"></HeaderStyle>
<Columns>
<asp:TemplateField HeaderText="Amount">
<ItemTemplate>
<asp:Label ID="lbl" runat="server" Text='<%# Eval("Amount", "{0:F2}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
In default.aspx.cs page, included OnRowDataBound event,
protected void GV_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
((Label)e.Row.FindControl("lbl")).Text = Convert.ToDecimal(((DataRowView)e.Row.DataItem)["Amount"]).ToString("F2");
}
This
http://shawpnendu.blogspot.com/2009/04/how-to-format-gridview-rowscolumns-in.html[
^] link helped me to solve this problem.