请帮助提供代码。如何添加3、4、5列中的数字并将其转移到“总计”列中。同时,“ Total”列不能是永久的,例如listView1.Items [i] .SubItems [11] .Text-此解决方案不合适,您可能需要查找“ Total”列本身,因为它不是永久的,就像SubItems [9] 10.11等。
将数据写入listView1的代码
dataReader = await cmd1.ExecuteReaderAsync();
if (dataReader.FieldCount > 0)
{
for (int i = 0; i < dataReader.FieldCount; i++)
{
if (i == 0)
{
listView1.Columns.Add(dataReader.GetName(0), 0, HorizontalAlignment.Left);
}
else
{
listView1.Columns.Add(dataReader.GetName(i).ToString().Replace("_", " "), 80, HorizontalAlignment.Left);
}
}
ListViewItem lv = new ListViewItem();
//
while (await dataReader.ReadAsync())
{
lv = listView1.Items.Add(dataReader[dataReader.GetName(0)].ToString().Replace('_', ' '));
for (int h = 1; h < dataReader.FieldCount; h++)
{
lv.SubItems.Add(dataReader[dataReader.GetName(h)].ToString());
}
}
}
for (int i = 1; i < listView1.Columns.Count; i++)
listView1.Columns[i].Width = -2;
答案 0 :(得分:0)
此代码假定listView1
中有一个名为“总计”的列。
(int itt = 1; itt < listView1.Items.Count; itt++)
{
int Totall =
int.Parse(listView1.Items[itt].SubItems[2].Text) +
int.Parse(listView1.Items[itt].SubItems[3].Text) +
int.Parse(listView1.Items[itt].SubItems[4].Text);
//Сумма чисел добавить во всего
listView1.Items[itt].SubItems["Total"].Text = Totall.ToString();
}
int.Parse
将字符串转换为整数,但是请记住,如果字符串不是数字,它将抛出异常。如果您需要进行错误检查,请考虑使用int.TryParse
。
还请注意,子项的索引为0。含义0对应于第一个可视列,1对应于第二个可视列。