try:<% DataBinder.Eval(Container.DataItem,"Value","{0:###.00}") %>--------------------------------
AspNetPager 免费分页控件4.1版发布,欢迎下载使用:http://www.webdiyer.com

解决方案 »

  1.   

    <% DataBinder.Eval(Container.DataItem,"Value","{0:###.00}") %>
      

  2.   

    1 我写程序都是在.net studio中的,所以有个单独的.aspx.cs文件,不用 <%  %>在网页文件中写,
    2 我不知道Container.DataItem,像我的这种情况该写什么,由于十分紧急,请大家帮忙。多谢
      

  3.   

    我的DataGrid中的数据是动态生成的,各种查询结果都不一样,所以这种方式不行,有谁能告诉我用container.dataitem时具体是什么
    我用 DataBinder.Eval(DataGrid.Collumn[0],"field","{0:c}")
    就不行,我想知道container.DataItem具体指什么?
      

  4.   

    {0:c}表示显示currency类型,货币类型
    {0:F2}可以控制显示小数的位数为2位
    如果要X位则为
    {0:FX}
      

  5.   

    在cs文件中
    Container.DataItem应该为
    e.Item.DataItem其中e一般为事件的某个参数。所以e.Item.DataItem等价于DataGrid1.Item[0].DataItem
      

  6.   

    楼上的,我写了程序如下,但是报错 
    DataGrid1.DataSource=myDataSet.Tables["trade"].DefaultView;
    DataBinder.Eval(DataGrid1.Items[0].DataItem,"tradeamount","{0:c}");
    DataGrid1.DataBind();“/programs/test”应用程序中的服务器错误。
    --------------------------------------------------------------------------------索引超出范围。必须为非负值并小于集合大小。参数名:index 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。参数名:index源错误: 
    行 121:
    行 122:  DataGrid1.DataSource=myDataSet.Tables["trade"].DefaultView;
    行 123:  DataBinder.Eval(DataGrid1.Items[0].DataItem,"tradeamount","{0:c}");
    行 124:                    
    行 125:                     DataGrid1.DataBind();
     源文件: d:\programs\test\test.aspx.cs    行: 123 堆栈跟踪: 
    [ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
    参数名:index]
       System.Collections.ArrayList.get_Item(Int32 index) +91
       System.Web.UI.WebControls.DataGridItemCollection.get_Item(Int32 index) +10
       test.WebForm1.QuerryButton_Click(Object sender, EventArgs e) in d:\programs\test\test.aspx.cs:123
       System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
       System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
       System.Web.UI.Page.ProcessRequestMain() +1263 
    --------------------------------------------------------------------------------
    版本信息: Microsoft .NET 框架版本:1.0.3705.0; ASP.NET 版本:1.0.3705.0
      

  7.   

    如果你的数据库中只有钱是money型或decimal型的可以考虑用下面代码转换因为数据库的money型或decimal型转换到dataset里都是decimal,多了就无法判断了。多了可以考虑用
    datareader的sqlmoney和sqldecimal类型来判断。
    for(int j=0;j<dr.Table.Columns.Count;j++)
    {
    if(str1==dr.Table.Columns[j].ColumnName)
    {
    System.Type type=dr[j].GetType();
    if(type == System.Type.GetType("System.String"))
    {
    dr[j]=((TextBox)pl.Controls[i]).Text;
    }
    else if(type == System.Type.GetType("System.Int32")) 
    {
    dr[j]=Convert.ToInt32(((TextBox)pl.Controls[i]).Text);
    }
    else if(type == System.Type.GetType("System.Int64"))
    {
    dr[j]=Convert.ToInt64(((TextBox)pl.Controls[i]).Text);
    }
    else if(type == System.Type.GetType("System.DateTime"))
    {
    dr[j]=Convert.ToDateTime(((TextBox)pl.Controls[i]).Text);
    }
    else if(type == System.Type.GetType("System.Decimal")) 
    {
    dr[j]=Convert.ToDecimal(((TextBox)pl.Controls[i]).Text);
    }
    else if(type == System.Type.GetType("System.Boolean"))
    {

    dr[j]=Convert.ToBoolean(((TextBox)pl.Controls[i]).Text);
    }
      

  8.   

    MyStr = Format(5459.4, "##,##0.00")   ' Returns "5,459.40".
    MyStr = Format(334.9, "###0.00")   ' Returns "334.90".
    MyStr = Format(5, "0.00%")   ' Returns "500.00%".
      

  9.   

    使用ToString的重载版本,如:ToString(IFormatProvider)等。具体的版本很多,参见帮助文档。因为不知道你的具体类型,这里举一个decimal类型的保留小数两位:
    strDecimal=myDecimal.ToString("N"); 
    注:IFormatProvider可以和文化相关。
      

  10.   

    在datagrid的itemdatabound事件中进行处理。
      

  11.   

    我知道你的意思,是不是,你的DATAGRID的各列是在后置代码里自动生成的??如果是这样的话,最简单的方法是你在SQL语句中想办法,直接把相关的字段格式成0。00的格式。
      

  12.   

    foxtoo(阿里巴巴和四十大盗) ,你说得怎么做到?