社区
C#
帖子详情
listview的remove问题
swsw1
2003-08-22 11:24:54
for (int i=0;i<listView1.CheckedIndices.Count;i++)
{
listView1.Items.Remove(listView1.CheckedItems[i]);
}
为何每次执行时都有一条删除不了(选择三条只能删除两条)
...全文
82
8
打赏
收藏
listview的remove问题
for (int i=0;i<listView1.CheckedIndices.Count;i++) { listView1.Items.Remove(listView1.CheckedItems[i]); } 为何每次执行时都有一条删除不了(选择三条只能删除两条)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rouser
2003-08-22
打赏
举报
回复
樓上的和樓上上的說的都對
:)
再給你一種麻煩的
ListViewItem[] items = new ListViewItem[this.listView1.CheckedItems.Count];
for(int i=0;i<this.listView1.CheckedItems.Count;i++)
items[i] = this.listView1.CheckedItems[i];
foreach(ListViewItem item in items)
this.listView1.Items.Remove(item);
tibet
2003-08-22
打赏
举报
回复
del时要从后向前删
janus1999
2003-08-22
打赏
举报
回复
while(listView1.CheckedItems.Count >0)
listView1.Items.Remove(listView1.CheckedItems[0]);
rouser
2003-08-22
打赏
举报
回复
ListView.ListViewItemCollection items = listView1.CheckedItems;
foreach(ListViewItem item in items)
{
listView1.Items.Remove(item);
}
jjcccc
2003-08-22
打赏
举报
回复
其实最好不用索引来连续删除集合项,因为在在删除的同时,集合会自动调整项的索引。
rouser
2003-08-22
打赏
举报
回复
所以CheckItems[i]就變成CheckItems[i++]了
greenhill
2003-08-22
打赏
举报
回复
for (int i=0;i<listView1.CheckedIndices.Count-1;i++)
{
listView1.Items.Remove(listView1.CheckedItems[i]);
}
rouser
2003-08-22
打赏
举报
回复
因為你沒刪除一條,CheckedIndices.Count就自動--了
ListView
(列表视图)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace
ListView
_列表视图_ { public partial class Form1 : Form { public Form1() { InitializeComponent(); } static int itemNumber = 0;int a = 0; private void button1_Click(object sender, EventArgs e) { //构造条目的子条目字符串数组 String[] subItem = new String[] { textBox1.Text, textBox2.Text, textBox3.Text }; //插入新的条目
listView
1.Items.Add(new
ListView
Item(subItem));
listView
1.Items[itemNumber].ImageIndex = a; itemNumber++; a++; if (a >= 12) { a = 0; } textBox1.Text = ""; textBox2.Text = ""; textBox3.Text = ""; } private void button2_Click(object sender, EventArgs e) { for(int i=
listView
1.SelectedItems.Count-1;i>=0;i--) { //获取当前选中的条目之一
ListView
Item li =
listView
1.SelectedItems[i]; //删除这个条目
listView
1.Items.
Remove
(li); itemNumber--; } } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { string selStr = comboBox1.SelectedItem.ToString(); switch (selStr) { case "大图标":
listView
1.View = View.LargeIcon; break; case "小图标":
listView
1.View = View.SmallIcon; break; case "列表":
listView
1.View = View.List; break; case "报告":
listView
1.View = View.Details; break; } } } }
listView
适配器
它的写法很简单,却也很强大,它也符合google公司中提出的viewHodler布局重用 它对
listview
常用操作进行了封装,在也不同担心
listview
的使用了 public void add(T elem) { } public void addAll(List
elem) { } public void updateAll(List
elem) { } public void addAllBeforeClean(List
elem) {} public void set(T oldElem, T newElem) {} public void set(int index, T elem) {} public void
remove
(T elem) {} public void
remove
(int index) {} public boolean contains(T elem) {} /** Clear data list */ public void clear() {}
Android核心组件
ListView
详解
在Android所有常用的原生控件当中,用法最复杂的应该就是
ListView
了,它专门用于处理那种内容元素很多,手机屏幕无法展示出所有内容的情况。
ListView
可以使用列表的形式来展示内容,超出屏幕部分的内容只需要通过手指滑动就可以移动到屏幕内了。 另外
ListView
还有一个非常神奇的功能,我相信大家应该都体验过,即使在
ListView
中加载非常非常多的数据,比如达到成百上千条甚至更多,
ListView
都不会发生OOM或者崩溃,而且随着我们手指滑动来浏览更多数据时,程序所占用的内存竟然都不会跟着增长。那么
ListView
是怎么实现这么神奇的功能的呢? 下面我们来学习它,了解了它的基本工作原理,在感叹Google大神能够写出如此精妙代码的同时我也有所敬畏.1,
ListView
介绍; 2,原理讲解; 3,简单实现; 4,
ListView
扩展;
backbone.
listview
:一个简单的用于骨干网的
ListView
主干列表视图 一个简单的
ListView
for Backbone。 支持Backbone.Collection类的API。 set , reset , add ,
remove
, push , pop , shift , unshift 。 注意:这没有实现Marionette.CollectionView般的行为,但可以用来实现它。 (请参阅:自动渲染`Backbone.Collection) import { View } from 'backbone' ; import
ListView
from 'backbone.
listview
' ; const My
ListView
=
ListView
. extend ( { tagName : 'ul' } ) ; const ItemView = View . extend ( { tagName : 'li' ,
biyesheji.rar_open
Dim i As Integer With
ListView
1.ListItems.Add() .Text = Text1(0) For i = 1 To 4 .SubItems(i) = Text1(i) Next i End With End Sub Private Sub Command2_Click() ’删除列表框中信息 If
ListView
1.ListItems.Count > 0 Then If MsgBox("真的要删除吗?", vbQuestion + vbYesNo + vbDefaultButton2) = vbYes Then
ListView
1.ListItems.
Remove
ListView
1.SelectedItem.Index End If End If End Sub Private Sub Form_Load() Dim tpStr As String, i As Integer fileName = App.Path & "\data.txt" If Dir(fileName) <> "" Then ’加载数据 Open fileName For Input As #1 Do While Not EOF(1) With
ListView
1.ListItems.Add() For i = 0 To 4 Line Input #1, tpStr If i = 0 Then .Text = tpStr Else .SubItems(i) = tpStr End If Next i End With Loop Close #1 End If End Sub Private Sub Form_Unload(Cancel As Integer) Dim i As Integer Dim tpList As ListItem ’保存数据
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章