سؤال

أحاول برمجة أ 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(object sender, 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