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

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

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

WPF: בינדינג בזאמל לדטה גריד

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

    כתבתי את הקוד הבא:

    <DataGrid ItemsSource="{Binding Source={StaticResource addTorem},Path=Donations}" AutoGenerateColumns="False" >
                        <DataGrid.Columns>
                            <DataGridTextColumn Header="ID" IsReadOnly="True" Binding="{Binding IdDonation}" />
                            <DataGridTextColumn Header="שם התורם" Binding="{Binding Converter={StaticResource converterId}, Path=IdDonor}"/>
                        </DataGrid.Columns>
                    </DataGrid>
    

    אבל זה לא עבד ולא הציג כלום..
    שיניתי את השורה הראשונה כך:

    <DataGrid ItemsSource="{Binding}" AutoGenerateColumns="False" >
    

    ובמקום זאת כתבתי בקוד כך:

    previewDonations.DataContext = AddTorem.donations;
    

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

    תודה רבה!

    פורסם במקור בפורום CODE613 ב05/08/2015 15:34 (+03:00)

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

      תסתכל בחלון output בעת ההרצה, תראה את הסיבה למה זה לא עובד.
      לדעתי זה בגלל בעיית איות. לא יודע איזו.

      פורסם במקור בפורום CODE613 ב06/08/2015 13:28 (+03:00)

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

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

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

        באמת הייתה לי טעות שכתבתי Donations ולא donations.
        תיקנתי את זה ועדיין זה לא עובד..
        הודעת השגיאה בout היא:

        System.Windows.Data Error: 40 : BindingExpression path error: 'donations' property not found on 'object' ''AddTorem' (Name='')'. BindingExpression:Path=donations; DataItem='AddTorem' (Name=''); target element is 'DataGrid' (Name=''); target property is 'ItemsSource' (type 'IEnumerable')
        

        אבל אין לי מושג למה הוא אומר שהוא לא מוצא אותו.. כיון שבחלון AddTorem הגדרתי list של donations כציבורי וסטטי, וזה כתוב באיות הנכון...
        תודה רבה!

        פורסם במקור בפורום CODE613 ב06/08/2015 13:51 (+03:00)

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

          נסה במקום לכתוב להשתמש בחלון המאפיינים. ליד כל מאפיין יש בצד שמאל ריבוע קטן. קליק עליו בשמאלי של העכבר ולבחור בתפריט Create Data Binding...

          פורסם במקור בפורום CODE613 ב06/08/2015 17:00 (+03:00)

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

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

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

            ניסיתי ובחלון שנפתח בחרתי בסטטיק ריסורק ושם בAddTorem אולם למרבה הפלא הוא הראה לי הרבה מאפיינים של החלון, אבל הוא לא הראה לי את הליסטים שיצרתי שם.
            מדוע?

            פורסם במקור בפורום CODE613 ב06/08/2015 17:11 (+03:00)

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

              הליסטים הם מאפיינים או רק משתנים ציבוריים?
              כמו"כ אם הם סטטיים, אז זה אכן סיפור אחר לגמרי, משתמשים עם ביטוי סטטיק:
              {Binding Source={x:Static local:AddTorem.Donations}

              פורסם במקור בפורום CODE613 ב06/08/2015 18:30 (+03:00)

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

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

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

                @דוד ל.ט.

                הליסטים הם מאפיינים או רק משתנים ציבוריים?
                כמו"כ אם הם סטטיים, אז זה אכן סיפור אחר לגמרי, משתמשים עם ביטוי סטטיק:
                {Binding Source={x:Static local:AddTorem.Donations}

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

                פורסם במקור בפורום CODE613 ב06/08/2015 21:48 (+03:00)

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

                  @דוד ל.ט.

                  הליסטים הם מאפיינים או רק משתנים ציבוריים?
                  כמו"כ אם הם סטטיים, אז זה אכן סיפור אחר לגמרי, משתמשים עם ביטוי סטטיק:
                  {Binding Source={x:Static local:AddTorem.Donations}

                  אני רוצה לעשות בינדינג לליסט שהוא משתנה ציבורי ואינו מאפיין של החלון, כמו כן הוא לא סטטי..
                  כיצד לעשות זאת? לא הצלחתי...
                  האם חייבים שהוא יממש את הממשק INotifyProperty או שזה לא קשור.. (זה מה שהיה כתוב בstackOver אם הצלחתי להבין :lol: )
                  תודה!!

                  פורסם במקור בפורום CODE613 ב10/09/2015 20:59 (+03:00)

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

                    בינדינג מקבל רק מאפיין (גט וסט) לא משתנה. לא צריך לממש INotifyPropertyChanged. ואימתי צריך? כשרוצים ששינוי המאפיין ישתקף אוטומטית בתצוגה.

                    פורסם במקור בפורום CODE613 ב10/09/2015 21:29 (+03:00)

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

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

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

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

                      פורסם במקור בפורום CODE613 ב10/09/2015 21:35 (+03:00)

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

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

                        פורסם במקור בפורום CODE613 ב11/09/2015 11:59 (+03:00)

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

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

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

                          @דוד ל.ט.

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

                          תודה!
                          רק עכשיו ראיתי שענית לי...
                          הליסט הוא מסוג מילון, ז"א key ו value
                          ואני רוצה לאגד את הvalue של כל האיברים שבליסט...
                          אפשר להגדיר זאת בדטה קונטקסט?
                          תודה רבה!

                          פורסם במקור בפורום CODE613 ב16/09/2015 23:52 (+03:00)

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

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

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

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