try:<% DataBinder.Eval(Container.DataItem,"Value","{0:###.00}") %>--------------------------------
AspNetPager 免费分页控件4.1版发布,欢迎下载使用:http://www.webdiyer.com
AspNetPager 免费分页控件4.1版发布,欢迎下载使用:http://www.webdiyer.com
2 我不知道Container.DataItem,像我的这种情况该写什么,由于十分紧急,请大家帮忙。多谢
我用 DataBinder.Eval(DataGrid.Collumn[0],"field","{0:c}")
就不行,我想知道container.DataItem具体指什么?
{0:F2}可以控制显示小数的位数为2位
如果要X位则为
{0:FX}
Container.DataItem应该为
e.Item.DataItem其中e一般为事件的某个参数。所以e.Item.DataItem等价于DataGrid1.Item[0].DataItem
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
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);
}
MyStr = Format(334.9, "###0.00") ' Returns "334.90".
MyStr = Format(5, "0.00%") ' Returns "500.00%".
strDecimal=myDecimal.ToString("N");
注:IFormatProvider可以和文化相关。