Вопрос

Я пытаюсь запрограммировать событие 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)
 {

 }
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top