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

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

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

WPF RowDetailsTemplate

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

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

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

    וכעת הבעיה היא שאם פותחים את ה RowDetails של כמה שורות בבת אחת בכולם מופיע אותו דבר וכאשר לוחצים על שורה אחרת כל ה RowDetails משתנים אבל כולם אותו דבר וכולם מתאימים את עצמם לשורה הנבחרת.

    מה הפתרון? האם יש אפשרות שהטמפלט עבור כל RowDetails יהיה מופע חדש ואז הם אל יושפעו אחד מהשני או שזה לא קשר בכלל?

    פורסם במקור בפורום CODE613 ב09/01/2014 22:58 (+02:00)

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

      עיין כאן שכבר הובאה הדרכה איך לעשות טמפלט שונה לכל RowDetails , אבל עדיין איך מיישמים את זה עם הקשרי גומלין?

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

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

        גררת ועשית, וזה היסטורייה.
        תכלס יש בפניך קוד XAML ברור להפליא.
        תבדוק היטב מה כתוב בו, ואיפה הבעיה.

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

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

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

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

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

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

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

            @רחמים

            יש פה איזה מנגנון ...

            אסור שתהיה שורת קוד בXAML שאינך מבין בדיוק איך היא עושה ולמה.

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

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

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

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

              זה מה שכתוב ב XAML

              <my:Database1DataSet x:Key="Database1DataSet" />
                      <CollectionViewSource x:Key="ContactsViewSource" 
                                            Source="{Binding Path=Contacts, Source={StaticResource Database1DataSet}}" />
                      <CollectionViewSource x:Key="CategoriesViewSource" 
                                            Source="{Binding Path=Categories, Source={StaticResource Database1DataSet}}" />
                      <CollectionViewSource x:Key="CategoriesContactsViewSource" 
                                            Source="{Binding Path=FK_Contacts_Categories, 
                                            Source={StaticResource CategoriesViewSource}}" />
              

              את שלושת הראשונים אני מבין
              אבל את האחרון לא הבנתי את הבינדינג הזה שהנתיב שלו הוא FK_Contacts_Categories איך זה גורם להראות את אנשי הקשר מסוננים לפי השורה הנבחרת בקטגוריות?

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

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

                זה שואב מ"השורה הנוכחית" (מושג בקולקשיין ויו) של האוסף קטגוריות את המאפיין FK_Contacts_Categories שמכיל אוסף רשומות רלוונטיים של טבלת הבן.

                מה שאתה צריך זה פשוט למחוק את הקולקשיין הזה, ולשים בתוך האיזור הנדרש לפירוט במקום בינדינג לקולקשיין אז בינדינג לשורה שלה וPath לFK הנ"ל.

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

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

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

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

                  ניחשתי שזה אמור להיות כך אבל כאשר אני מדבג ורואה ב WATCHE את כל המאפיינים של CategoriesViewSource אין שם מאפיין FK_Contacts_Categories
                  וגם בתוך ה Source של CategoriesViewSource אין כזה מאפיין.
                  וזה מה שמפליא אותי מאיפה הבינדינג לוקח את זה?

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

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

                    תודה רבה!
                    סוף סוף זה עובד 🙂

                    עשיתי כך:

                    ItemsSource="{Binding Path=FK_Contacts_Categories }"
                    

                    רק שאני לא מבין למה זה עובד 😞

                    התוכל להסביר לי מה הולך כאן עם ה CategoriesViewSource ועם ה Binding

                    תודה רבה.

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

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

                      @רחמים

                      ניחשתי שזה אמור להיות כך אבל כאשר אני מדבג ורואה ב WATCHE את כל המאפיינים של CategoriesViewSource אין שם מאפיין FK_Contacts_Categories
                      וגם בתוך ה Source של CategoriesViewSource אין כזה מאפיין.
                      וזה מה שמפליא אותי מאיפה הבינדינג לוקח את זה?

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

                      איך זה עובד? יש כאן שני שלבים: א. הבינדינג מתייחס לDataContext שזה שורת קטגוריה. ב. לשורת קטגוריה יש מאפיין מסתורי בשם FK_XX_XX שנותן שורות בנים.

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

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

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

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

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

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

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