Я добавил динамически список на панели в моей winform. Я хотел бы получить значение из выбранного элемента, но мне не удается это сделать. У меня есть довольно хорошая идея, почему, но я не понимаю, как это сделать правильно.Как получить значение из выбранного элемента ListBox, добавленного динамически
Вот мой код:
private void App1button_Click(object sender, EventArgs e)
{
ListBox ListBoxapp = new ListBox();
PanelLB.Controls.Add(ListBoxapp);
string[] item = GetDesktopWindowsTitles();
foreach (string app in item)
{
ListBoxapp.Items.Add(app);
}
ListBoxapp.BackColor = System.Drawing.SystemColors.InfoText;
ListBoxapp.Size = new System.Drawing.Size(321, 135);
ListBoxapp.Font = new System.Drawing.Font("Lucida Console", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
if (ListBoxapp.SelectedItem != null)
{
MessageBox.Show("App selected is" + ListBoxapp.SelectedItem.Tostring())
}
}
Так эта работа отлично добавляет на моей панели, я могу выбрать элемент, но ничего не происходит.
Я уверен, что это потому, что я не могу добавить (после ListBoxapp.Font
**)
ListBoxapp.SelectedIndexChanged += new System.EventHandler(ListBoxapp_SelectedIndexChanged);
он говорит мне ListBoxapp_SelectedIndexChanged
не существует. Но, учитывая динамическое добавление, я не могу сделать это с «приоритетами». Я не знаю, чтобы добавить его по-другому. Спасибо.
У вас есть метод с именем 'ListBoxapp_SelectedIndexChanged' определен в твой класс ? – user3185569
Хо, я не понял, что это был метод! – jsls
проверить ответ ниже – user3185569