日期:2014-05-20  浏览次数:20746 次

ListView的问题
我用ListView来显示数据,其中有一项显示的是URL地址,有什么办法,什么事件能够用单击这个单元格URL跳出因个IE窗体来.使用的是View   =   Details

------解决方案--------------------
lz:两种方式可解决你的问题:

1、扩展ListView
使得控件可以添加类似LinkLable的对象。
2、变通做法:
///变换鼠标形状
private void listView1_MouseMove(object sender, MouseEventArgs e)
{
try
{
ListViewHitTestInfo info = listView1.HitTest(e.X, e.Y);
ListViewItem.ListViewSubItem subItem = info.SubItem;
if (subItem == null) return;
int index = info.Item.SubItems.IndexOf(subItem);
if (index == 2) //判断要处理的列
{
listView1.Cursor = Cursors.Hand;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

///处理自己的对象
private void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
{
try
{
ListViewHitTestInfo info = listView1.HitTest(e.X, e.Y);
ListViewItem.ListViewSubItem subItem = info.SubItem;
if (subItem == null) return;
int index = info.Item.SubItems.IndexOf(subItem);
if (index == 2) //判断要处理的列
{
Form10 frm = new Form10(); //这里换成你的代码
frm.Show();
}
else
{
return;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}