0

我有一个列表视图控件,它的数据不断刷新。我想将一个 XElement '放入'一行,所以我如果双击该行,双击将调用一个带有'隐藏' xelement 参数的方法。

我希望我开始解决它,调试器没有显示任何错误,但我不知道如何从行中到达 XElement-typo 元素。

这是我的代码的相关部分:

ListViewItem item = new ListViewItem();
            item = listBighit.Items.Add(new Offer (sor[0].ToString(),xml1,xml2));
            item.SubItems.Add(sor[1].ToString());
            item.SubItems.Add(sor[2].ToString());
            item.SubItems.Add(sor[3].ToString());
            item.SubItems.Add(sor[4].ToString());
            item.SubItems.Add(sor[5].ToString());

public class Offer : ListViewItem
{
    protected XElement _xml1;
    protected XElement _xml2;
    public Offer(string penznem, XElement xml1, XElement xml2)
    {
        this.xmlAddress1 = xml1;
        this.xmlAddress2 = xml2;
        base.Text = penznem;
    }
    public XElement xmlAddress1
    { get { return this._xml1; } set { this._xml1 = value; } }
    public XElement xmlAddress2
    { get { return this._xml2; } set { this._xml2 = value; } } 
}

我希望一些大师可以帮助我:) 谢谢!

4

1 回答 1

0
ListViewItem item = new ListViewItem();
item = listBighit.Items.Add(new Offer (sor[0].ToString(),xml1,xml2));

第一行没有做任何事情。我想你真正想做的是创建一个 Offer,而不是 ListViewItem:

Offer item = new Offer(...);
item.SubItems.Add(...);
// etc..
listBighit.Items.Add(item);  

然后,当您需要从 ListView 中检索项目时,将其转换回 Offer:

Offer first = (Offer)listBighit.Items[0];
于 2010-07-21T01:25:57.680 回答