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

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

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

WPF למה מאפיין לא יכול לקבל פקד קיים ?

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

    אני רוצה לעשות סרגל ניווט + חיפוש שינווט ויחפש ברשומות שמוצגות בדטה גריד,
    לצורך זה יצרתי יוזר-קונטרול שיהיה סרגל ועשיתי מאפיין 'טבלת יעד' בסרגל הניווט, אבל כאשר באתי להגדיר לסרגל שטבלת יעד שלו יהיה דטה גריד קיים לא היה ברשימה רק אפשרות של יצירת דטה גריד חדש.
    עשיתי אותו דבר בדיוק ב WIN FORMS וזה עובד.

    פורסם במקור בפורום CODE613 ב29/01/2014 18:30 (+02:00)

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

      דבר ראשון יש לך צורך בסרגל ניווט ואתה מנסה לעשות זאת בWPF. לא לגמרי הבנתי מה הכוונה בסרגל ניווט.
      דבר שני עשית קוד וזה לא עבד וזה בעיה נוספת. לשם פיתרון שלה, מוכרחים לראות את הקוד לבעיה זו (מאפיין יעד? סוג מה מי, ואז מה קורה?).
      והבעיה השלישית, שצורת עבודה זהה לקוד זה עובד בWinForms כלומר גם אם נפתור את שתי הבעיות הקודמות, תישאר שאלה למה זה שונה.

      ובכן לאיזה שאלה הכי חשוב לך שאתייחס כעת?
      בשביל שאלה א' אני צריך הרחבה של מה את רוצה שיהיה ובשביל שתי השאלות האחרות אני צריך קוד WPF, בשביל השלישית אני צריך קוד WinForms.
      ואנא בחר שאלה אחת בלבד, אחרי שנגמור איתה נעבור לאחרת.

      פורסם במקור בפורום CODE613 ב29/01/2014 19:00 (+02:00)

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

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

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

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

        כדי הסרגל ידע באיזה דטה גריד מדובר יש את המאפיין הבא:

        Private _TargetDataGrid As DataGrid
            Public Property TargetDataGrid As DataGrid
                Get
                    Return _TargetDataGrid
                End Get
                Set(value As DataGrid)
                    _TargetDataGrid = value
        '.....
               End Set
            End Property
        

        אבל כאשר אני בא להגדיר את המאפיין הנ''ל שיפנה לדטה גריד שקיים בטופס זה לא אפשרי.
        יש לי רעיונות איך לעשות את זה אחרת בלא להזדקק למאפיין הזה אבל השאלה למה ב WPF זה לא עובד ובדיוק אותו דבר ב WIN FORMS כן עובד.

        פורסם במקור בפורום CODE613 ב29/01/2014 19:14 (+02:00)

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

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

          @רחמים

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

          איפה אתה "בא להגדיר" ומה הכוונה "לא אפשרי" המסך מתפוצץ?

          פורסם במקור בפורום CODE613 ב29/01/2014 19:34 (+02:00)

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

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

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

            נראה לי שאם הוא עושה.

            Wpf.TargetDataGrid = MyDataGrid;
            

            והVS אומר לו שזה תחביר שגוי.

            ואם הוא עושה.

            Wpf.TargetDataGrid = New DataGrid(...);
            

            אז זה עובד.

            פורסם במקור בפורום CODE613 ב29/01/2014 20:10 (+02:00)

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

              בקוד לא ניסית להגדיר את המאפיין של טבלת היעד אלא בחלונית המאפיינים של הסרגל, כאשר אני בא להגדיר את המאפיין הזה נפתח קומבו עם שורה אחת שאם בוחרים אותה נוצר דטה גריד חדש ואין בקומבו הזה את הדטה גריד שכבר קיים בטופס,
              לאומת זאת בWIN FORMS בקומבו הנ''ל יש את כל הדטה גרידים שיש בטופס.

              פורסם במקור בפורום CODE613 ב29/01/2014 20:15 (+02:00)

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

                @magicode

                נראה לי שאם הוא עושה.

                Wpf.TargetDataGrid = MyDataGrid;
                

                והVS אומר לו שזה תחביר שגוי.

                אז זהו שלא...

                @רחמים

                בקוד לא ניסית להגדיר את המאפיין של טבלת היעד אלא בחלונית המאפיינים של הסרגל, כאשר אני בא להגדיר את המאפיין הזה נפתח קומבו עם שורה אחת שאם בוחרים אותה נוצר דטה גריד חדש ואין בקומבו הזה את הדטה גריד שכבר קיים בטופס,
                לאומת זאת בWIN FORMS בקומבו הנ''ל יש את כל הדטה גרידים שיש בטופס.

                "לא בקוד, אלא בחלון המאפיינים" = לא בקוד אלא בXAML.
                אם תחשוב תבין למה אי אפשר. XAML הוא לא קוד רקע, אלא צורה הצהרתית ליצירת אובייקטים בלבד!
                בXAML אפשר להעביר מידע או בצורת סטרינג, או בצורת Markup Extension שזה הסוגריים המסולסלות, בהם יש כמה דרכים נוספים לתת מידע (אפשר ליצור כאלה נוספים).
                אז איך אתה רוצה לתת את הגריד הפציפי בתור מאפיין? אם כסטרינג של שמו, בשמחה, אבל אתה חייב לטפל במחלקה שלך בתרחיש של בנאי סטרינג ולא פקד גריד.
                ואם כבינדינג לאלמנט אתה אכן יכול רק שמאפיין רגיל לא תומך בבינדינג כך שתצטרך לכתוב Dependency Property.

                פורסם במקור בפורום CODE613 ב30/01/2014 12:21 (+02:00)

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

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

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

                  אכן WPF יש בו נוחות אבל גם נכות.
                  אצטרף להמיר את המאפיין למאפיין תלות.

                  תודה רבה על ההסבר.

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

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

                    @רחמים

                    אצטרף להמיר את המאפיין למאפיין תלות.

                    כדאי לך לחשוב שוב לפני שאתה עושה זאת.
                    אתה רוצה קישור בזמן עיצוב בין קומבובוקס לרשימת עמודות.
                    אפשרות ראשונה: רשימת העמודות הרי לא נוצרה מאיליהם, יש להם מקור, אולי תוכל לחלוק את אותו המקור עם שניהם?
                    אפשרות שניה: אם זה דפוס פעולה אוטומטי, שהיוזר קונטרול מתממשק לכל רשימת הטבלאות והעמודות, תוכל לעשות מאפיין בודד של רשימת טבלאות במערך, והקומבו הראשון יפנה למיקום וממנו הID השני ייקח. את רשימת הטבלאות תוכל לקחת בקוד ע"י חיפוש בParent בו הוא נמצא אחרי כל הDataGrid (אפשרות גרועה מבחינתי), או שוב ישירות למקור המידע של הדטה גרידים.

                    הצלחה.

                    פורסם במקור בפורום CODE613 ב30/01/2014 13:26 (+02:00)

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

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

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

                      העינין של כל הדטה-גרידים צריכים את הסרגל הזה, המקור של כל הטבלאות זה הדטה-סט שמחובר ל SQL SERVER
                      חשבתי גם על רעיון אחר והוא:
                      כיון שהדטה-גרידים שלי הם בעצם מחלקה חדשה שיורשת מדטה-גריד של WPF אפשר שהדטה גריד יצור עבור עצמו סרגל וכבר יעביר לו בפרמטר את מערך העמודות וכל מה שצריך.

                      פורסם במקור בפורום CODE613 ב30/01/2014 13:33 (+02:00)

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

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

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

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