none
ListView中的item怎么设置装箱拆箱操作绑定实体类? RRS feed

  • 问题

  • ListBox可以直接装箱拆箱实体类。ListView怎么做啊?

    info 实体类

    装箱
    ListViewItem item = new ListViewItem(info.Name, 0);
    item.Tag = info.ID;
    this.ListView1.Items.Add(item);

    拆出来就出错
    Info user = this.ListView1.SelectedItem[0] as Info    这里要怎么写?

    2013年9月15日 1:40

答案

  • ListView的每个子项都是ListViewItem对象的,你可以间接去构建实体类,例如代码如下:

    // 通过获取子项的属性来构建一个Info对象
    // 下面采用了对象构造器的方式来构造一个对象
    Info user =new Info {Name=this.ListView1.SelectedItem[0].SubItems[0].Text,Tag = this.ListView1.SelectedItem[0].SubItems[1].Text};


    If my post is helpful,please help to vote as helpful, if my post solve your question, please help to make it as answer. My sample

    2013年9月15日 14:52

全部回复

  • ListViewItem构造函数第一个传入String,后面是图标项索引。我建议:

    1)用一个List<T>填充(比如Info类)。

    2)绑定到ListView中。

    3)图标指定,可以用ImageIndex设置某个项索引图标。


    If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer

    Help by clicking:
    Click here to donate your rice to the poor
    Click to Donate
    Click to feed Dogs & Cats


    Found any spamming-senders? Please report at: Spam Report

    2013年9月15日 2:27
    版主
  • 谢谢指点,我试试
    2013年9月15日 2:53
  • hello,

    你把资料放进ListViewItem.Tag里面,但你取出的时后少了Tag属性,而且你只放info.ID

    ListViewItem item = new ListViewItem(info.Name, 0);
    item.Tag = info;
    this.ListView1.Items.Add(item);

    取出

    Info user = this.ListView1.SelectedItem[0].Tag as Info


    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/

    2013年9月15日 10:42
  • ListView的每个子项都是ListViewItem对象的,你可以间接去构建实体类,例如代码如下:

    // 通过获取子项的属性来构建一个Info对象
    // 下面采用了对象构造器的方式来构造一个对象
    Info user =new Info {Name=this.ListView1.SelectedItem[0].SubItems[0].Text,Tag = this.ListView1.SelectedItem[0].SubItems[1].Text};


    If my post is helpful,please help to vote as helpful, if my post solve your question, please help to make it as answer. My sample

    2013年9月15日 14:52