سؤال

ما هو أفضل طريقة مختصرة وموجزة إضافة معالجات الأحداث لعناصر واجهة المستخدم في XAML عبر برنامج نصي آيرن روبي؟ افتراض: أن التعليمات البرمجية لإضافة معالج الأحداث تكون مكتوبة في السيناريو آيرن روبي ورمز للتعامل مع هذا الحدث سيكون في البرنامج النصي آيرن روبي نفسه

وأود أي ما يعادل التعليمات البرمجية التالية ولكن في آيرن روبي. التعامل مع بسيطة BUTTON1 انقر فوق الحدث.

public partial class Window1 : Window
{
    public Window1()
    {
        InitializeComponent();
        button1.Click += new RoutedEventHandler(button1_Click);
    }

    void button1_Click(object sender, RoutedEventArgs e)
    {
        MessageBox.Show("Hello World!");
    }
}
هل كانت مفيدة؟

المحلول

وحتى الآن وأنا أعلم، وتتعرض الأحداث. NET وسائل اتخاذ الكتل في آيرن روبي. لذلك، يمكن أن تكتب:

button1.click do |sender, args|
    MessageBox.show("Hello World!")
end

هذا يغطي الخيارات الأخرى.

نصائح أخرى

ويمكنك أيضا استخدام إضافة إلى الاشتراك حدث إذا كان من المنطقي أن لك.

p = Proc.new do |sender, args| 
  MessageBox.show("Hello  World!")
end

# Subscribe
button1.click.add p

# Unsubscribe
button1.click.remove p
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top