listview如何选中整行!

limang1989 2012-03-18 05:01:27


如图,我点击项的时候整行都被选择,可现在点了只有前面有内容的地方有选中,后面都是空白的。我看了很多
帖子,上面说把FullRowSelect设为true就行,可我设了还是没用!!!求解!
...全文
1185 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
hetengfei_ 2012-03-19
  • 打赏
  • 举报
回复
如在web中,这个用js 来set backgroundcolor 就行了。
limang1989 2012-03-19
  • 打赏
  • 举报
回复
。。我结贴算了。。去学WPF。。。
limang1989 2012-03-19
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 sinitek123 的回复:]

用listbox可以
[/Quote]

listbox可以实现,但是我想要在里面加图片,所以只能用listview!!!
qizhf 2012-03-19
  • 打赏
  • 举报
回复
FullRowSelect设置为True
HideSelection同时设为False
limang1989 2012-03-19
  • 打赏
  • 举报
回复
还是不行哦!!。。。
。。
sinitek123 2012-03-19
  • 打赏
  • 举报
回复
用listbox可以
kkgoose 2012-03-19
  • 打赏
  • 举报
回复
是column的长度没有等于listview的长度吧,设置长度
limang1989 2012-03-19
  • 打赏
  • 举报
回复
楼上两位的方法都试过了,都没用,本来想发附件的,结果发现这论坛不能发附件。。。

  • 打赏
  • 举报
回复
[Quote=引用 6 楼 limang1989 的回复:]

引用 4 楼 chinajiyong 的回复:

引用 3 楼 limang1989 的回复:

引用 2 楼 tangxu12 的回复:

把listview的FullRowSelect设置为True


试过了,没用!!

是不是已经失去焦点了?


焦点??
我直接在属性里设置了,而且我还重新建了个项目,只拖了个listview控件,而且只加了一个项,结果
……
[/Quote]

LZ,你最好在LIstView控件里设置一下 单元格 。 属性:GridLines
  • 打赏
  • 举报
回复
[Quote=引用楼主 limang1989 的回复:]
如图,我点击项的时候整行都被选择,可现在点了只有前面有内容的地方有选中,后面都是空白的。我看了很多
帖子,上面说把FullRowSelect设为true就行,可我设了还是没用!!!求解!
[/Quote]

获取ListView焦点:
ListView.Focus();
LZ,你试试看它能不能默认选中第一行先。
默认选中第一行:
listView1.Items[0].Selected = true;
一选一行就是:
FullRowSelect = true; //这个就是属性里设置的。
你先试试让它默认选中第一行先,看下是否是选中一行吗?
limang1989 2012-03-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 chinajiyong 的回复:]

引用 3 楼 limang1989 的回复:

引用 2 楼 tangxu12 的回复:

把listview的FullRowSelect设置为True


试过了,没用!!

是不是已经失去焦点了?
[/Quote]

焦点??
我直接在属性里设置了,而且我还重新建了个项目,只拖了个listview控件,而且只加了一个项,结果
还是一样,一行里面的内容有多少,点了之后就有多长变成蓝色!!
porschev 2012-03-18
  • 打赏
  • 举报
回复

选中就是listView的ID.FullRowSelect = true;

是不是你其它地方的设置问题
EnForGrass 2012-03-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 limang1989 的回复:]

引用 2 楼 tangxu12 的回复:

把listview的FullRowSelect设置为True


试过了,没用!!
[/Quote]
是不是已经失去焦点了?
limang1989 2012-03-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 tangxu12 的回复:]

把listview的FullRowSelect设置为True
[/Quote]

试过了,没用!!
tangxu12 2012-03-18
  • 打赏
  • 举报
回复
把listview的FullRowSelect设置为True
Kation 2012-03-18
  • 打赏
  • 举报
回复
还在用WinForm吗?用WPF后你的问题不是问题
新浪阅读器总结 一:综述 在新浪阅读器中,我首次学到了RSS(Rich Site Summary)或(Really Simple Syndication)中文名称:建议信息聚合。RSS是一种基于XML标准,在互联网上被广泛采用的内容包装和投递协议。 二:项目实现的成果和代码。 再这里面,我首先对xml文件中的内容进行总结: 1:如何加载xml文件(两种方法) A:通过打开文件对话框来打开(openfiledialog) if (openFileDialog1 .ShowDialog()==DialogResult .OK ) { String strFileName = openFileDialog1.FileName; //加载xml文件 XmlDocument doc = new XmlDocument(); doc.Load(strFileName ); } B:文件的路径是web地址 //加载xml文件 XmlDocument doc = new XmlDocument(); //文件路径可以是web地址............ doc.Load("http://rss.sina.com.cn/news/marquee/ddt.xml"); 2:如何获取xml的内容 获取单一节点的内容(SelectSingleNode) XmlNode node = doc.SelectSingleNode("rss/channel/title"); 获取多个节点的内容(SelectNodes) XmlNodeList list = doc.SelectNodes("rss/channel/item"); 3:获取属性值(Attributes ["version"].Value) //获取属性(根节点) XmlNode root = doc.SelectSingleNode("rss"); MessageBox.Show(root .Attributes ["version"].Value ); 4:获取text的内容 String title = itemlist[i].SelectSingleNode("title").InnerText; 下面对界面中学到的内容做个总结: 1:Treeview的afterselect事件 当点击treeview里面的频道信息时,加载右面的listview里面内容 如何往listview里面添加列(("日期", 100)日期表示列名,100表示列所占的长度): lv.Columns.Add("日期", 100); lv.Columns.Add("标题", 400); lv.Columns.Add("作者", 100); 将更新时间进行格式化; pubdate = Convert.ToDateTime(pubdate).ToString("yyy-mm-dd HH:mm:ss"); 向listview添加行内容的时候要注意第一个用lvi.text后面都用lvi.subitems.add 如下; lvi.Text = pubdate; lvi.SubItems.Add(title); lvi.SubItems.Add(author); lvi.Tag = link;//存储超链接 2:在treeview加载频道的信息(基本的格式) 首先获取频道的分类: XmlNodeList channelclasslist = doc.SelectNodes("opml/body/outline"); 得到频道数; ChannelClassCount = channelclasslist.Count; 通过循环来添加treeview的节点(下面的是一级节点) for (int i = 0; i < channelclasslist.Count;i++ ) { //增加treeview的一级节点 TreeNode tnchannelclass = new TreeNode(); tnchannelclass .Text =channelclasslist [i ].Attributes ["text"].Value.Replace ("-新浪RSS","") ; tnchannelclass.Tag ="0"; tvlist.Nodes.Add(tnchannelclass ); 3:如何将全屏显示(两种方法): A:使用全局变量(省略一部分代码) private bool isfullscreen = false; private void toolStripButton15_Click(object sender, EventArgs e) { if (isfullscreen ==false ) { isfullscreen = true; panel1.Visible = false; } else //与上面情况相反 { isfullscreen = false ; panel1.Visible = true ; } B:当前界面的显示情况与当前完全相反 是在全屏按钮事件下: panel1.Visible = !panel1.Visible; 4:listview下面的内容: A:属性:Mulit select(允许选择多项) FullRowSelect(选中整行) 该listview没有默认的图片,在imagelist里面可以选择图片 B:事件(lv_SelectedIndexChanged)选择之后改变的事件 这里面当选中listview中的内容,在下面的web中加载信息 5:缓存 在新浪阅读其中还加了一个缓存: 缓存就是当选中treeview节点时,访问缓存(url)判断是否有xml数据,这面分两种情况,当无缓存时,我们在这面要第一次读取,读取完将xml数据写入缓存并记录当前的读取时间,显示xml数据。当有缓存时,判断时间是否超时,如果已经超时,从网络中重新读取,读取完将xml数据写入缓存并记录当前的读取时间,显示xml数据。未超时的话,获取缓存中的数据显示。

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧