Программа на C # выбрала событие в коде
-
06-07-2019 - |
Вопрос
Я пытаюсь запрограммировать событие ListBoxItem
Selected
в коде, потому что мне нужны динамические ListBoxItems
. Я кодирую это в wpf, отлично работает следующий xaml:
<ListBoxItem Tag="cPage_Mod_Modules" Selected="ListBoxItem_Selected">
<StackPanel Orientation="Horizontal">
<TextBlock Style="{StaticResource sColor01}" Text="» " />
<TextBlock Text="Moduler" VerticalAlignment="Center" Focusable="True" />
</StackPanel>
</ListBoxItem>
Selected = " ListBoxItem_Selected "
работает нормально.
Но когда я пытаюсь создать ListBoxItem
в коде, это не работает. Вот мой код:
IList<ListBoxItem> lbi = new List<ListBoxItem>();
ListBoxItem itemBox = new ListBoxItem();
itemBox.Tag = "cPage_Assignment_Overview";
itemBox.Selected += new EventHandler(ListBoxItem_Selected(this, null));
lbTask.Items.Add(itemBox);
Я просто хочу направить событие ListBoxItem_Selected (отправитель объекта, RoutedEventArgs e)
, когда кто-то выбирает элемент.
Решение
Вы имеете в виду, как подключить мероприятие? Это должно быть сделано (при условии, что подпись функции совместима с подписью обработчика событий).
itemBox.Selected += ListBoxItem_Selected;
Другие советы
Попробуйте изменить
itemBox.Selected += new EventHandler(ListBoxItem_Selected(this, null));
до
itemBox.Selected += ListBoxItem_Selected;
Я предполагаю, что ваш ListBoxItem_Selected объявлен так
public void ListBoxItem_Selected(object sender,RoutedEventArgs e)
{
}
Не связан с StackOverflow