当listview里的item不止一种类型时

         listview几乎是每个程序都会做的,但是当listview要显示的东西比较复杂的时候怎么办?????这个问题有很多方法解决,有的在View getView(int position, View convertView, ViewGroup parent) {里单独列出来,谷歌已有解决办法。

listview 的adapter有这样两个方法:

/** 根据位置 判断当前条目是什么类型 */

/** 根据位置 判断当前条目是什么类型 */
	@Override
	public int getItemViewType(int position) {  //20     
		if (position == datas.size()) { // 当前是最后一个条目
			return MORE_ITEM;
		}
		return getInnerItemViewType(position); // 如果不是最后一个条目 返回默认类型
	}

	

	/** 当前ListView 有几种不同的条目类型 */
	@Override
	public int getViewTypeCount() {
		return super.getViewTypeCount() + 1; // 2 有两种不同的类型
	}

然后在getview里面就可以根据getViewTypeCount()的返回类型进行控制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WinForms中的ListViewItem按钮是一种ListView中显示按钮的控件。ListView控件是WinForms中用于展示和编辑大量项目的强大控件。它允许我们以表格的形式显示数据,并且可以自定义每个项的外观和行为。 在ListView中显示按钮,可以为每个ListViewItem添加一个按钮来执行自定义操作。为ListViewItem添加按钮的一种常见方法是使用SubItems属性。每个ListViewItem的SubItems属性可以添加多个子项,而每个子项可以包含一个按钮。通过为每个按钮设置Click事件处理程序,我们可以为按钮定义自定义操作。 例如,我们可以创建一个包含按钮的ListViewItem列表,当用户单击按钮,会弹出一个消息框显示该按钮所在的ListViewItem的文本。以下是一个示例代码: ```csharp ListView listView = new ListView(); // 创建按钮列 listView.Columns.Add("操作", 100); // 创建ListViewItem ListViewItem item1 = new ListViewItem("项1"); item1.SubItems.Add(new ListViewItem.ListViewSubItem(item1, "按钮1")); item1.SubItems[1].Tag = item1; // 为了在按钮的Click事件处理程序中获取ListViewItem // 添加按钮到ListViewItem Button button1 = new Button(); button1.Text = "点击我"; button1.Click += (sender, e) => { ListViewItem clickedItem = (ListViewItem)((Button)sender).Tag; MessageBox.Show(clickedItem.Text); }; listView.Controls.Add(button1); // 将按钮添加到ListView控件中 listView.Items.Add(item1); // 将ListViewItem添加到ListView控件的项目列表中 ``` 这样,当用户点击按钮,将会弹出一个消息框,显示按钮所在的ListViewItem的文本。这就是如何使用WinForms的ListViewListViewItem按钮来实现自定义操作的简单示例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值