我想在listview中创建一个事件处理程序。我的意思是每次我在listview中有一个新元素时我想调用一个函数。有人可以帮我怎么做吗?我不需要点击事件处理程序。事件处理程序我希望它由代码自动生成(从列表视图中选择,然后选择一个新方法)。列表视图中的元素如下所示:element1 name surname
(这是在第一行)。 THx的
如何为此功能创建处理程序?
private void listview1_SelectedIndexChanged(object sender, EventArgs e)
{
for (int x = 0; x < listview1.Items.Count; x++)
{
if (listview1.Items[x].Selected)
MessageBox.Show(listview1.Items[x].SubItems[1].Text);
}
}
答案 0 :(得分:3)
正如Henk Holterman指出的那样,您在问题中发布的方法listview1_SelectedIndexChanged
是一个事件处理程序。如果它没有按照它应该做的那样做,那可能是因为它没有附加到listview1
的相应事件。
如果该方法已存在于包含表单代码的.cs文件中,则需要将其附加到ListView的SelectedIndexChanged
事件中。为此,请选择控件,然后单击属性面板中的闪电图标。在列表中找到事件(SelectedIndexChanged
),然后单击右侧的箭头并选择listview1_SelectedIndexChanged
。
<强>更新强>
由于您以编程方式添加ListView,因此可以按如下方式分配处理程序
listView1.SelectedIndexChanged += listview1_SelectedIndexChanged;
关于你的崩溃,我真的不能想到任何一件事。也许你可以发布例外文本?