如何修改列表视图列?

use*_*417 3 c# listview decimal datarow

我有列表视图数据将显示在数据表的列表视图中,就像我已经完成但我在datarow 6有问题

           dt = classes.xxxxx.GetData(sql, mf);

  if (dt != null)
  {
    ListViewItem newitem = null;
    lstviewcashmembers.Items.Clear();
    lstviewcashmembers.BeginUpdate();
    foreach (DataRow dr in dt.Rows)
    {
      newitem = lstviewcashmembers.Items.Add(dr[0].ToString());
      newitem.SubItems.Add(dr[1].ToString());
      newitem.SubItems.Add(dr[2].ToString());
      newitem.SubItems.Add(dr[3].ToString());
      newitem.SubItems.Add(dr[4].ToString());
      newitem.SubItems.Add(dr[5].ToString());
      newitem.SubItems.Add(dr[6].ToString());
      newitem.SubItems.Add(dr[7].ToString());
      newitem.SubItems.Add(dr[8].ToString());
      newitem.SubItems.Add(dr[9].ToString());
      newitem.SubItems.Add(dr[10].ToString());
      newitem = null;
    }

    lstviewcashmembers.EndUpdate();
  }
Run Code Online (Sandbox Code Playgroud)

我的问题就像我从数据库得到的原始值是25.00000在博士[6]

我的意思是在这行newitem.SubItems.Add(dr [6] .ToString());

但我必须只显示两个小数位,如25.00

有人帮这个吗?

Jas*_*own 5

用这个:

dr[6].ToString("N2")
Run Code Online (Sandbox Code Playgroud)

更新:

((double)dr[6]).ToString("N2")
Run Code Online (Sandbox Code Playgroud)

N2必须在数字类型上完成,因此必须在DataRow对象上进行强制转换.