gpt4 book ai didi

c# - ListView 和 Messagebox 奇怪的错误?

转载 作者:太空宇宙 更新时间:2023-11-03 16:27:48 25 4
gpt4 key购买 nike

我有一个使用 ListView 的项目。用户可以从 ListView 中选择一些东西(它在详细信息模式下设置)——在某些情况下,会出现一个消息框,要求确认是/否。确认代码不会以任何方式修改 ListView 或选择。代码位于 SelectedIndexChanged 事件处理程序中。

问题是这样的 - 当我做出创建弹出窗口的选择时 - 该程序最初按预期工作。当我将鼠标移回 ListView 时,它会导致选择更改为鼠标下方的符号(无需单击) - 就好像“HoverSelect”处于打开状态(当它没有打开时)。这只会在我做出涉及弹出 MessageBox 的选择之后发生。

我想我破坏了一些东西,我决定写一个简单的测试。我创建了一个带有硬编码值的 ListView 并放入以下代码:

 private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{

listView1.Enabled = false;
MessageBox.Show("Test");
listView1.Enabled = true;

}

当我做出选择时 - 事件被触发两次。我不确定它是否与我原来的问题有关,还是只是另一个巧合。

添加:在我的测试示例中 - 发生以下情况:

第一次选择 - “测试”第二次选择-“测试”“测试”第三……N——“测试”“测试”

所以我认为这是我主要问题的另一个方面。删除代码以禁用/启用 ListView 没有任何区别。

如何让 MessageBox 和 ListView 相互“友好”?

最佳答案

设置ListView.HideSelectionfalse

ListView.HideSelection: Gets or sets a value indicating whether the selected item in the control remains highlighted when the control loses focus.

关于c# - ListView 和 Messagebox 奇怪的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11984749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com