这是我的代码,用ListBox
个对象以及项ListViewItem
和.Text
属性填充名为 delBooks 的.Tag
。
ListViewItem item = new ListViewItem();
item.Text = "ss"; // Or whatever display text you need
item.Tag = "dd";
delBooks.Items.Add(item);
我在ListBox
中看到的输出如下所示:
ListViewItem: {ss}
如何更正此问题,以便在ss
?
ListBox
答案 0 :(得分:2)
将DisplayMember
上的ListBox
设置为Text
(作为字符串)。
答案 1 :(得分:1)
ListViewItem
不存在ListBox
之类的对象。这是ListBox
控件取代ListView
控件的原因之一。要从ListViewItem
控件中获取ListBox
类似功能,您必须实现自己的对象
class ListBoxItem
{
public string Text { get; set; }
public string Tag { get; set; }
public ListBoxItem(string text, string tag)
{
this.Text = text;
this.Tag = tag;
}
}
使用您的自定义对象填充ListBox
,只需执行以下操作:
listbox.DisplayMember = "Text";
listbox.Items.Add(new ListBoxItem("ss", "dd"));
.DisplayMember
ListBox
属性的ListBox
属性是自定义对象的属性名称,该属性将在ListBox
中显示给用户。
如果您需要根据MessageBox.Show( ((ListBoxItem)listbox.Items[0]).Tag) );
项目集合访问自定义对象值,可以进行简单的转换以检索这些值:
.Tag
"dd"
属性是我们之前设置的值struct
PS:如果你像我一样坚持设计这个方法也适用于ListViewItem
编辑:如果您真的死定使用.DisplayMember
,技术上可以将.Text
设置为(在您的情况下)ListViewItem
<p class="read-more">read more link</p>
<div class="hide-reveal">
<p> here is first para</p>
<p> here is second para.</p>
</div>
属性对象
答案 2 :(得分:0)
您需要更改最后一行,例如“delBooks.Items.Add(item.Text.toString());”