<asp:GridView runat="server" ID="articleList" AutoGenerateColumns="False" DataKeyNames="FullName, Name">
<Columns>
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="Length" HeaderText="Size" DataFormatString="{0:#,### B}" />
</Columns>
</asp:GridView>
因为Byte看起来令人困惑和拥挤,我试图通过代码划分为1024来获取BoundField的DataFormatString="{0:#,### B}"
,但无法成功。
我有以下代码,我不知道在=
的左侧写什么。我需要像
articleList.BoundFields[1].DataFormatString = String.Format("{0:#,### KB}", Math.Round(Convert.ToDecimal(Eval("Length")) / Convert.ToDecimal(1024), 2));
如何将文件大小值从Bytes更改为KiloBytes?
答案 0 :(得分:0)
您可以使用GridView
的{{3}}事件来操纵基础数据,如下所示:
<asp:GridView runat="server" ID="articleList" RowDataBound="OnGridViewRowDataBound">
...
</asp:GridView>
protected void OnGridViewRowDataBound(object sender, GridViewRowEventArgs e)
{
var dataItem = e.DataItem as YourClass;
e.Row.Cells[1].Text = ConvertToKiloBytes(dataItem);
}