كيفية الحصول على القيمة من نافذة i window.show () ؛
سؤال
أنا أكتب تطبيقًا بسيطًا يتم النقر عليه عند النقر على أمر يتم نقره ، وهو أمر مشدود وأنا أفعله
{...
newEvent.ExecuteTargets += exacuteNewEvent;
}
void exacuteNewEvent(string message)
{
Window1 w = new Window1();
w.ShowDialog();
}
مشكلتي هي كيف استدعاء نافذتي الرئيسية لمعرفة أنها تحتوي على ناس جديد ، هل يجب أن أدخل تفويضه بطريقة WA من النافذة التي يجب أن يستدعيها؟ هل هناك طريقة أخرى للقيام بذلك؟
المحلول
تمرير مرجع إلى النموذج الحالي واستخدم ذلك لاستدعاء الوظائف عليه.
class Form1
{
void Function()
{
newEvent.ExecuteTargets += exacuteNewEvent;
}
void exacuteNewEvent(string message)
{
Window1 w = new Window1(this);
w.ShowDialog();
}
public void ExecuteStuffInOtherWindow()
{
// do something
}
}
class Window1
{
Form _otherForm;
public Window1(Form f)
{
_otherForm = f;
_otherForm.ExecuteStuffInOtherWindow(); // call code in other form
}
}
لا تنتمي إلى StackOverflow