Objectlistview双击说明
本文关键字:说明 双击 Objectlistview | 更新日期: 2023-09-27 18:05:51
我正在尝试在objectlistview
对象中实现doubleclick
函数。
根据开发人员的意见,应该使用ItemActivate
而不是MouseDoubleClick
。
所以我想到了这个:
private void treeListView_ItemActivate(object sender, EventArgs e)
{
try
{
ListView.SelectedIndexCollection col = treeListView.SelectedIndices;
MessageBox.Show(col[0].ToString());
}
catch (Exception e3)
{
globals.logfile.error(e3.ToString());
globals.logfile.flush();
}
finally
{
}
}
为每个双击行提供一个值。但是我怎么从那一行得到细节呢?
这是我现在使用的整个解决方案:
private void treeListView_ItemActivate(object sender, EventArgs e)
{
try
{
var se = (StructureElement)treeListView.GetItem(treeListView.SelectedIndex).RowObject;
MessageBox.Show(se.id.ToString());
}
catch (Exception e3)
{
globals.logfile.error(e3.ToString());
globals.logfile.flush();
}
finally
{
}
}
为每个双击行提供一个值。但是我怎么从那一行得到细节呢?
我认为你必须使用下面的OLVListItem
来访问RowObject
,像这样:
private void treeListView_ItemActivate(object sender, EventArgs e) {
var item = treeListView.GetItem(treeListView.SelectedIndex).RowObject;
}
这就是我现在从treelistview中获取数据的方式:
private void treeListView_ItemActivate(object sender, EventArgs e)
{
try
{
var se = (StructureElement)treeListView.GetItem(treeListView.SelectedIndex).RowObject;
MessageBox.Show(se.id.ToString());
}
catch (Exception e3)
{
globals.logfile.error(e3.ToString());
globals.logfile.flush();
}
finally
{
}
}