דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. מתחיל בc# וwpf שליחת נתונים לפונקציה או הפעלת פונקציה מחלקה

מתחיל בc# וwpf שליחת נתונים לפונקציה או הפעלת פונקציה מחלקה

מתוזמן נעוץ נעול הועבר ארכיון code613m
7 פוסטים 3 כותבים 478 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א מנותק
    א מנותק
    אליעזר 0
    כתב ב נערך לאחרונה על ידי
    #1

    שלום!
    התחלתי ללמוד סי שארפ וקבלנו שיעורי בית לכתוב שולה מוקשים.

    יצרתי מחלקות לשחקן ללוח ולכפתור. וכן אינום של רמות.

    הכל יפה וטוב.
    דע עקא...
    אין לי מושג כיצד לנהל את זרימת התוכנית.

    חשבתי לעשות כך:
    א. מסך פתיחה- מקבל רמה רצויה ושם.
    מאתחל שחקן חדש. ויותר לוח ומוקשים בהתאם לרמה שנדרשת.

    אבל...

    אני מציג מסך. ורוצה לעצור עד שיתקבל אירוע קליק. כמו prompt בגוואה סקריפט.
    אבל אין לי מושג איך.
    ושאני מנסה להשתמש באירוע לחיצה זה לא עובד. בגלל שתי סיבות.
    א. התוכנה ממשיכה לרוץ ומאתחלת שחקן לא שם ורמה. (וקורסת )
    ב. אי אפשר באירוע קליק להעביר נתונים לאלמנט חיצוני. ומה יעזור לי לאתחל שחקן שכל חייו בתוך הסקופ של האירוע?! <!-- s:-( --><img src="{SMILIES_PATH}/icon_e_sad.gif" alt=":-(" title="עצוב" /><!-- s:-( -->

    אם הייתי יכול לפחות להפעיל ארוע קליק במחלקה הראשית כבר היה עוזר באיזה מידה. אבל גם זה איני מצליח. האירוע מופעל רק במחלקה החופפת לzaxml
    תודה רבה!

    פורסם במקור בפורום CODE613 ב06/10/2014 10:01 (+03:00)

    תגובה 1 תגובה אחרונה
    0
    • dovidD מנותק
      dovidD מנותק
      dovid ניהול
      כתב ב נערך לאחרונה על ידי
      #2

      ברכות לשלב בו אתה נמצא!

      בUI, עצירת תוכנית בד"כ מתבצעת ע"י חלון קלט מודאלי - חלון חדש שא"א לעוזבו בלי ביטול/אישור והתוכנה ממתינה לתשובתו בשביל להמשיך בקוד. פעולה זו מושגת ע"י הרצת מתודת ShowDialog לחלון WPF. שים לב שבקוד החלון הנקרא עליך לתת תשובה: DialogResult = true;

      התשובה שלי אופיינית לבעיה הספציפית. בהצלחה!

      פורסם במקור בפורום CODE613 ב06/10/2014 13:03 (+03:00)

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      תגובה 1 תגובה אחרונה
      0
      • א מנותק
        א מנותק
        אליעזר 0
        כתב ב נערך לאחרונה על ידי
        #3

        תודה רבה!
        אנסה..
        בעבר ניסיתי עם שואו דיאלוג. אבל ללא ה"טרו" שכתבת. כנראה זה שורש הענין.

        פורסם במקור בפורום CODE613 ב06/10/2014 15:12 (+03:00)

        תגובה 1 תגובה אחרונה
        0
        • א מנותק
          א מנותק
          אליעזר 0
          כתב ב נערך לאחרונה על ידי
          #4

          תודה על התגובות עד כה.
          לצערי הנסיון להגדיר את החלון עם דיאלוג ריזאלט=טרו.
          זורק חריג.

          זה לא הגדרה מותרת...

          וזה עיקר הקוד.(וואלקם זה חלון חדש)

           public MainWindow()
                  {
                     InitializeComponent();
                     this.Visibility = Visibility.Hidden;
                     Wellcom wellcom = new Wellcom();//welcom is custom window
                     wellcom.ShowDialog();
                     wellcom.DialogResult = true;
          
                     this.wpfPlayer.Text = player.Name;
                     this.level.Text =player.Level.ToString();
                     this.Visibility = Visibility.Visible;
                     
          
                  }
          

          תודה רבה

          לכידה.PNG

          פורסם במקור בפורום CODE613 ב12/10/2014 22:45 (+03:00)

          תגובה 1 תגובה אחרונה
          0
          • S מנותק
            S מנותק
            softs
            כתב ב נערך לאחרונה על ידי
            #5

            זה ENUM בשם DialogResult

            שים שם DialogResult.OK

            פורסם במקור בפורום CODE613 ב13/10/2014 11:30 (+03:00)

            תגובה 1 תגובה אחרונה
            0
            • א מנותק
              א מנותק
              אליעזר 0
              כתב ב נערך לאחרונה על ידי
              #6

              תודה!
              אקווה לנסות בקרוב ממש.
              לגבי השיעורי בית הספציפים האלו. עד שראיתי התשובה כאן כבר נתייאשתי ועשיתי שלmain אין את רוב הניהול.
              אלא אחר אתחול התוכנית אין המשך בmain והניהול עובר לאירוע של הלחיצה והוא היוצר אוביקטים ומפעיל אותם...

              פורסם במקור בפורום CODE613 ב21/10/2014 12:24 (+03:00)

              תגובה 1 תגובה אחרונה
              0
              • dovidD מנותק
                dovidD מנותק
                dovid ניהול
                כתב ב נערך לאחרונה על ידי
                #7

                @softs

                זה ENUM בשם DialogResult

                שים שם DialogResult.OK

                לא. אתה מחליף עם winforms. בwpf זה מאפיין בוליאני (ראה לינק להלן).

                @אליעזר

                תודה על התגובות עד כה.
                לצערי הנסיון להגדיר את החלון עם דיאלוג ריזאלט=טרו.
                זורק חריג.

                דקדקתי לכתוב:
                @דוד ל.ט.

                שים לב ש**[u:6ax7yavg]בקוד החלון הנקרא[/u:6ax7yavg]** עליך לתת תשובה: DialogResult = true;

                בתוך הקוד של החלון Wellcom אתה צריך להגיב בשלב כל שהוא ולענות לחלון המקור שקרא לחלון הזה (נגיד המשתמש כותב את שמו ולוחץ על הפתור "אישור"). בשלב בו החלון Wellcom "גמר" עם המשתמש וקיבל ממנו תשובה או אי תשובה, הוא מחזיר לחלון המקור במאפיין הזה האם אכן ישנה תשובה רלוונטית.
                ברגע שאתה כותב בקוד DialogResult = true; זה סוגר את החלון והקוד הקורא מתעורר מ"קפאונו" וממשיך לרוץ. הוא יכול לבחון את התשובות מהחלון Wellcom ע"י פנייה למאפייניו.

                הנה תיעוד של המאפיין עם הסבר אף לשתי מקרי השגיאה האפשריים.

                אגב בWPF השגיאה תמיד נמצאת בinner exception, לא משנה מה זה ולמה זה ככה, בכל אופן בגירסת הVisual Studio שברשותך א"א לצפות בשגיאת המקור. ממילא אני מאוד ממליץ לך לעבור לVisual Studio Ultimate שהיא "עקרונית" בתשלום, שמה אתה יכול לראות את לשון השגיאה המקורית שבמקרה זה היא: DialogResult is set before a window is opened by calling ShowDialog.

                עריכה:
                אני טעיתי. לשון ההודעת שגיאה היא: DialogResult can be set only after Window is created and shown as dialog., וזה כאילו המאפיין הוגדר לפני/ללא קריאת הShowDialog. וזה לא נכון, אלא הבעיה היא שהמאפיין נקרא אחרי הClose של הטופס. לשון הודעת השגיאה בטעות לא מכסה את המקרה הזה.

                פורסם במקור בפורום CODE613 ב21/10/2014 14:52 (+03:00)

                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                תגובה 1 תגובה אחרונה
                0

                בא תתחבר לדף היומי!
                • התחברות

                • אין לך חשבון עדיין? הרשמה

                • התחברו או הירשמו כדי לחפש.
                • פוסט ראשון
                  פוסט אחרון
                0
                • דף הבית
                • קטגוריות
                • פוסטים אחרונים
                • משתמשים
                • חיפוש
                • חוקי הפורום