在事件后更新列表视图子项文本

本文关键字:文本 视图 列表 事件 更新 | 更新日期: 2023-09-27 18:33:42

>我有列表视图,可能会更改事件的文本,如下所示:

    private void OnEvent(object sender, AutomateConnectionEventArgs e)
    {
        if (aListView.InvokeRequired)
        {
            Invoke(new MethodInvoker(delegate()
            {
                Traitement(e);
            }));
        }
        else
        {
            Traitement(e); 
        }
    }

    private void Traitement(AutomateConnectionEventArgs e)
    {
        ListViewItem item = aListView.FindItemWithText(e.idAutomate);
        if (e.notification.Equals("connect"))
        {
            aListView.Items[item.index].SubItems[5].Text = DateTime.Today.ToShortDateString();
            aListView.Items[item.index].SubItems[7].ForeColor = Color.Green;
            aListView.Items[item.index].SubItems[7].Text = "Connected";
            aListView.Items[item.index].SubItems[8].Text = DateTime.Now.ToLongTimeString();
        }
    }

它上升没有错误,当在视觉工作室中使用断点遵循此内容时,它会正确运行,但列表视图不会更改表单中的文本

在事件后更新列表视图子项文本

只需使用新值创建新的ListViewItem对象,并使用新的 ListViewItem 对象更新旧ListeviewItem