c#将标签添加到ListBox项目

时间:2015-10-28 19:26:57

标签: c# listbox

在我的应用程序中,有一个动态填充的列表框。

每个项目都需要有一个点击事件,因此它将打开属于此项目的组件。

因此我需要在每个项目上添加一个标记,因此我可以在事件方法中获取此标记。

列表框:

var lb_Volunteers_From_Question = new ListBox();
foreach (var volunteer in volunteers)
{
    lb_Volunteers_From_Question.Items.Add(volunteer.Name);
    {
        // set tag
        Tag = volunteer;
    };

    // set event
    lb_Volunteers_From_Question.Click += new EventHandler(ShowVolunteerProfile);
}

// listbox settings

事件方法

public void ShowVolunteerProfile(object sender, EventArgs e)
{
    // get volunteer out of tag
    var item = sender as ListBox;
    var tagQuestionDetail = (TagQuestionDetail)item.Tag;


    // Show volunteer profile info
    // code                     
}

但这对我不起作用。有办法吗?

1 个答案:

答案 0 :(得分:0)

这里:

public void ShowVolunteerProfile(object sender, EventArgs e)
{
    // get volunteer out of tag
    var item = sender as ListBox;
    var tagQuestionDetail = (TagQuestionDetail)item.SelectedItem.Tag;


    // Show volunteer profile info
    // code                     
}