c# 如何获取listview鼠标选中任意行的行号?

用整型i 保存选中行的行号!

激活 listView1_SelectedIndexChanged事件,
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
int length = listView1.SelectedItems.Count;
for (int i = 0; i < length; i++)
{
string j= (listView1.SelectedItems[i].Index + 1).ToString();
MessageBox.Show(j);
}
}

//关于你的提问,用整型i 保存选中行的行号,相信根据我的提示应该会把这个问题处理了吧。追问

你的方法很对 但还要请问在别的事件中如何引用listView1_SelectedIndexChanged事件里获得的这个行号 j 呢?

追答

你可以设置一个全局变量,代码如下:
public string Num;//设置一个全局变量
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
int length = listView1.SelectedItems.Count;
for (int i = 0; i < length; i++)
{
string j= (listView1.SelectedItems[i].Index + 1).ToString();
Num = j; //给全局变量赋值
MessageBox.Show(j);
}
}
//拖拽一个button控件,激活Click事件
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(Num); //获取全局变量Num值
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-09-16
int i = listView1.SelectedItems[0].Index;

索引从0开始,行号 你可以给加个1。 这个是所有选中的第一行,你可以把控件设置成单选追问

关键是SelectedItems[0]中的0不能写死了 效果是鼠标选中第几行i 就要变成几 如选中第5行i 就要变成5 选中10行 i 就变成10

第2个回答  2011-09-16
listview.Rows[e.RowIndex]追问

这样写编译器通不过 错误的

c# 如何获取listview鼠标选中任意行的行号?
int i = listView1.SelectedItems[0].Index;索引从0开始,行号 你可以给加个1。 这个是所有选中的第一行,你可以把控件设置成单选 追问 关键是SelectedItems[0]中的0不能写死了 效果是鼠标选中第几行i 就要变成几 如选中第5行i 就要变成5 选中10行 i 就变成10 asp20 | 发布于2011-09-16 举报| 评...

C#如何获取listview选中项
private void CreateMyListView(){ \/\/ Create a new ListView control.ListView listView1 = new ListView();listView1.Bounds = new Rectangle(new Point(10,10), new Size(300,200));\/\/ Set the view to show details.listView1.View = View.Details;\/\/ Allow the user to edit item text....

C# listview 控件中,以列表呈现,如何获取选中的某一项的名称
listView1.GridLines = true;\/\/ Sort the items in the list in ascending order.listView1.Sorting = SortOrder.Ascending;\/\/ Create three items and three sets of subitems for each item.ListViewItem item1 = new ListViewItem("item1",0);\/\/ Place a check mark next to the item.item...

C# 如何获取listview里面当前选中的item
方法二:private object GetSelectedItemFromListView(ListView listView){ return listView.SelectedItems[0];} 方法一:private object GetSelectedItemFromListView(ListView listView){ SelectedListViewItemCollection selListViewItemCol = listView.SelectedItems;IEnumerator enumer = selListViewItemCol.GetEnume...

如何实现 C#winform ListView 鼠标移入行时,行变色高亮
在第一个listview的ItemDrag事件里写代码,首先要获取你拖动的项可能是多个最好用数组来保存,然后遍历你拖动的项,让第二个listview添加他们然后你需要在第一个里面移除这些拖动的项,就完成了。

在C#中的Listview控件中,当鼠标悬浮在某列或者当选中某行时怎么显示图片...
给你个例子:tnClass.ToolTipText = bi.Remark;\/\/鼠标放在上面显示的简介 。后面bi.Remark你可以改为你的当前图片路径

C#,listview控件,我想判断选中的项是不是选中行的第一列,该怎么判断那...
直接获取选中项所在的列索引,判断columnindex是否等于0,如果是,就是第一列

C#中listview弹出菜单的两种方法问题
all right Control.MousePosition这个用来获取鼠标位置 但是不用通过判断坐标这么麻烦吧 应该可以获取当前点击的listviewitem的index 如果是-1,那么就是没选中了,那就不弹出菜单 如果选中了,再根据选中的index弹出相应的菜单 顺便把获取listviewitem坐标的方法告诉你 listView1.GetItemAt(X,Y)通过X,Y坐标...

C# foreach(int ListIndex in listView1.SelectedIndices)是什么意思...
listView1.SelectedIndices 表示你选择目前在listView中选择了的项目索引,里面是以树组方式存放,例如:listView中有数据 a,b,c,d,那麼对应的索引就应该为0,1,2,3,然後你用鼠标选择了,a,b,c,那麼对应的索引就为0,1,2,foreach 就是用来遍历出0,1,2三个索引,,,明白没??望采拉 ...

C# 在listview中添加一行 这一行会用controls在单元格,里面添加了butto...
只能用“整行选中”属性实现近似的效果。参考:https:\/\/msdn.microsoft.com\/zh-cn\/library\/system.windows.forms.listview.fullrowselect%28v=VS.80%29.aspx 你可以考虑试试第三方增强型的 Listview 控件。具体请百度,不广告了。或者,自己制作一个简单的控件(下面放一个Panel,选中就变色)也行。

相似回答