Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更改C中列表视图列中特定单元格中的值_C#_Windows_Listview - Fatal编程技术网

C# 更改C中列表视图列中特定单元格中的值

C# 更改C中列表视图列中特定单元格中的值,c#,windows,listview,C#,Windows,Listview,[列表视图以C][1] 如何使其仅在C中与值列中的更改值一起列在一行中?? [1] :图像 或者如何获取列值中的特定单元格 我想添加一行,列值中的值发生变化? 当应用程序运行时,列表视图将继续逐行添加新值,我想添加一行,其中包含ID、名称、类型和值,以便以后可以选择 示例图像: 只有红色框中的值会更改 [1] :[2]: [3]: 代码 是否可以使用listview的其他选项?假设您的r是唯一的值,您可以检查是否有匹配的记录: private void timer2_Tick(object s

[列表视图以C][1]

如何使其仅在C中与值列中的更改值一起列在一行中?? [1] :图像 或者如何获取列值中的特定单元格

我想添加一行,列值中的值发生变化? 当应用程序运行时,列表视图将继续逐行添加新值,我想添加一行,其中包含ID、名称、类型和值,以便以后可以选择

示例图像: 只有红色框中的值会更改

[1] :[2]: [3]:

代码


是否可以使用listview的其他选项?

假设您的r是唯一的值,您可以检查是否有匹配的记录:

private void timer2_Tick(object sender, EventArgs e)
{

    bool exists = false;
    foreach (ListViewItem lvi in listView1.Items)
    {
        if ( lvi.SubItems(1).Text == r )
        {
            exists = true;
            lvi.SubItems(2).Text = rr;
            lvi.SubItems(3).Text = rrr;
        }
    }

    if (!exists )
    {
    ListViewItem lvi = new ListViewItem("1");
    lvi.SubItems.Add(r);
    lvi.SubItems.Add(rr);
    lvi.SubItems.Add(rrr);
    listView1.Items.Add(lvi);
    }

}

这是可行的,但老实说,我认为您应该更新DataTable和DataGridView。DataTable可以有一个唯一的列,您可以在源代码上执行检查查找,而不是在GUI上执行查找。

更改值的代码在哪里?从技术上讲,LV没有列-数据只是这样显示-它有子项显示在评论中添加代码??永远不要在评论中添加代码-你的帖子做得很好谢谢
private void timer2_Tick(object sender, EventArgs e)
{

    bool exists = false;
    foreach (ListViewItem lvi in listView1.Items)
    {
        if ( lvi.SubItems(1).Text == r )
        {
            exists = true;
            lvi.SubItems(2).Text = rr;
            lvi.SubItems(3).Text = rrr;
        }
    }

    if (!exists )
    {
    ListViewItem lvi = new ListViewItem("1");
    lvi.SubItems.Add(r);
    lvi.SubItems.Add(rr);
    lvi.SubItems.Add(rrr);
    listView1.Items.Add(lvi);
    }

}