C# 是否可以更改 ListView 中的 e.Label 值

标签 c# .net winforms listview

我有ListView,我正在尝试编辑一行。但我还需要更新 AfterLabelEdit 中的 e.Label。是否有任何解决方法可以更改此事件中 e.Label 的值。例如,如果我输入了“Zip”,当我按回车键时,它应该变成“Zip1”

最佳答案

您可以根据某些条件取消编辑,并为项目的文本分配新值。

Label包含标签的建议值,因此您可以根据该值编写标准。然后要取消编辑,只需设置 CancelEdit 即可。事件参数的属性为 true。然后使用它的 Item属性您可以找到编辑项并为其设置新标签。

例如:

private void listView1_AfterLabelEdit(object sender, LabelEditEventArgs e)
{
    if (e.Label == "something")
    {
        e.CancelEdit = true;
        ((ListView)sender).Items[e.Item].Text = "something else";
    }
}

关于C# 是否可以更改 ListView 中的 e.Label 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47829883/

相关文章:

vb.net - 隐式创建的Form是如何工作的?

c# - 在 Winforms 应用程序中使用 Chrome 或 Firefox?

c# - ValueType.GetHashCode 的 native 实现如何工作?

c# - 检查 AzureTable 是否有数据的最简单有效的方法?

c# - 从 C# 运行 Python 函数

c# - 如何在保存 native 内存的类上实现 AsSpan()?

.net - 如何在我的 .NET 代码中验证全局邮政编码

c# - 始终在底部滚动文本框

winforms - 在不存在控制对象的情况下在 UI 线程上运行代码

c# - 在通用 Windows 应用程序中获取键盘状态