משיב מוביל
בעיה ב wpf בחלונות 8

שאלה
-
יש לי תוכנה שהתחלתי לפתח בויזואל סטודיו 2012 בחלונות 7, ( WPF , C SHARP)
לאחרונה עברתי לחלונות 8, ויש לי בעיה מוזרה, בתפריט העליון יש לחלק מהאפשרויות את סימון הבחירה (chekbox) המובנה, וכאשר נפתח התפריט הרקע של תיבת הבחירה שחור לחלוטין, ורק כאשר עוברים עליו העם העכבר. הוא נראה רגיל.
מישהו יכול לומר מה מקור התקלה, ואיך לתקן? [למחוק וליצור שוב כמובן שניסיתי]
יום ראשון 30 דצמבר 2012 12:46
תשובות
-
מעניין - נראה לי שזה באמת באג בWPF...
אני מציע לעקוף את זה ולשים Checkbox ישירות בתוך ה MenuItem , ולעצב את זה לפי הצורך
- סומן כתשובה על-ידי Eran Sharvit יום שלישי 15 ינואר 2013 09:41
יום שלישי 08 ינואר 2013 11:45
כל התגובות
-
איזה תפריט עליון?
אתה יכול להעלות קוד אולי?
אני משתמש בחלונות 8 עם VS2012 כבר כמה חודשים ולא חווה שום בעייה.
יום שני 31 דצמבר 2012 08:08 -
מדובר ב toolbar עם פקד menu .
כפי שאתה רואה אי אפשר לראות אם זה מסומן או לא.
וכאשר העכבר עובר על זה- רואים טוב הנה-
תודה רבה !
יום שני 31 דצמבר 2012 13:54 -
הי חבלזון, האם בעייתך נפתרה?
אם לא, נשמח אם תשתף את הקוד הרלוונטי.
מיקרוסופט מציעה שירות זה ללא תשלום, למטרת סיוע למשתמשים והעשרת הידע הקשור בטכנולוגיות ובמוצרים של מיקרוסופט. תוכן זה מתפרסם כפי שהוא והוא אינו מעיד על כל אחריות מצד מיקרוסופט.
יום רביעי 02 ינואר 2013 11:03 -
הנה הקוד:
<MenuItem IsCheckable="True" IsChecked="{Binding IsPratimView}" Click="TmenuClick" Tag="pratim"> <MenuItem.Header> <StackPanel> <TextBlock Text="פרטים" FontSize="12" FontWeight="Bold"/> <TextBlock Text="רשימה סטנדרטית עם כל" /> <TextBlock Text="הפרטים הרלוונטיים" /> </StackPanel> </MenuItem.Header> </MenuItem> <MenuItem Background="{x:Null}" IsCheckable="True" IsChecked="{Binding IsIconView}" Click="TmenuClick" Tag="smalim" > <MenuItem.Header> <StackPanel> <TextBlock Text="כרטיס ביקור" FontSize="12" FontWeight="Bold"/> <TextBlock Text="תצוגת כרטיס ביקור עם "/> <TextBlock Text="שם וכתובת"/> </StackPanel> </MenuItem.Header> </MenuItem>
יום רביעי 02 ינואר 2013 22:41 -
מוזר.
ניסית לעבור עם Snoop ולראות אם הוא מראה משהו מעניין?
כמו כן, התפריט שאתה משתמש בו נראה כמו Ribbon - כתבת את זה מאפס או שאתה משתמש בקונטרול של צד שלישי כלשהו?
יום שני 07 ינואר 2013 16:01 -
קודם כל תודה לך אלעד על זמנך, וברכות ואיחולים על פרס ה- MVP...
אמנם שאבתי את ההשראה מה Ribbon אבל העדפתי לעבוד לבד, ומדובר ב ToolBar פשוט.
[ מבנה התוכן: Window>Grid>ToolBar>Menu>MenuItem ]
לצערי לא מצאתי ב Snoop דרך לעקוב אחרי התפריט, העץ נעצר רק בפריט ה Menu הבסיסי, ולא ממשיך לתוך התוכן שלו. [אולי זה עצמו אומר משהו? ]. לא מצאתי דרך לעקוב אחרי התוכן. אם יש לך רעיון, אודה לך מאוד!
אני אמשיך לנסות לעבוד אתו בינתיים.
- נערך על-ידי חבלזון יום שני 07 ינואר 2013 21:20
יום שני 07 ינואר 2013 21:19 -
תודה :)
האמת שסנופ באמת לא יעזור - הסיבה היא שתפריט ממומש למעשה בחלון נפרד (הוא משתמש בקונטרול tooltip שממומש ע"י חלון נוסף - החלק שקופץ) וסנופ יצליח לתפוס את זה..
אתה יכול להעלות את הפרוייקט לskydrive ואנסה להסתכל?
יום שני 07 ינואר 2013 22:17 -
ואגב, נראה לי שזו בעיית סטייל כלשהי.יום שני 07 ינואר 2013 22:18
-
ואגב, נראה לי שזו בעיית סטייל כלשהי.
בתחילה שיערתי שזו הבעיה, אלא ש...
אין לי שום סטייל ל Check Box ואכן שאר תיבות הסימון נראים מצוין. [יצרתי כזה סטייל לצורך הניסוי- והוא לא הושפע ממנו.]
ניסיתי להבין מאיפה הוא יורש את הסטייל [ה check Box של Menu] ולא הצלחתי.
אבל הבעיה הגדולה היא שגם עכשיו, אם אני מריץ על חלונות 7, זה נראה מצוין!
ואם אני מריץ מערכת אחרת שהתחלתי לבנות בחלונות 8- גם זה נראה טוב.
לכן זה נשמע כמו בעיה הקשורה לכך שהתחלתי לבנות ב-7, אבל אין לי פתרון לזה.
(באקסס נתקלתי הרבה בבעיות כאלו במעבר בין גרסאות, ותמיד הפתרון בסופו של דבר היה העתקת הקוד והתוכן לקובץ וטפסים חדשים).
ניסיתי ליצור מחדש את כל ה reference הקשורים, ואפילו להעתיק הכל מחדש לפרויקט ופתרון חדשים לחלוטין- ולא עזר :(
ושוב, תודה!
יום שלישי 08 ינואר 2013 08:16 -
אאל"ט הוא מקבל סטייל אוטומאטית ברגע ששמים אותו בתוך Menu. הסטייל האוטומאטי תלוי במערכת ההפעלה.
תנסה ליצור אפליקציה קטנה שמשחזרת את הבאג ולהעלות את זה לרשת ואנסה לעזור.
יום שלישי 08 ינואר 2013 08:47 -
מצאתי את מקור הבעיה: ה ToolBar.
ב Menu שלא תחת ToolBar הכל תקין.
אבל איך אפשר לטפל בזה?
הנה דוגמא קטנה - אפליקציה בסיסית, תפריט בתוך ToolBar
יום שלישי 08 ינואר 2013 09:58 -
יפ, אז בדיוק כמו שאמרתי. Toolbar משנה את הסטייל של אלמנטים שנמצאים בתוכו.
אסתכל מאוחר יותר ואנסה לתת לך פתרון
יום שלישי 08 ינואר 2013 10:50 -
תודה !
סיכום ביניים של ניסיונות שלי:
ב Context Menu ה Check Box מעולה.
במצב "חדות גבוהה" - זה יותר טוב, הרקע אפור ולא שחור.
אז אולי אפשר ידנית להגדיר את זה בכל ערכת נושא. אבל לא מצאתי את זה ברישום [Registery] בינתיים.
טוב, מקווה שלך יהיה רעיון טוב יותר.
יום שלישי 08 ינואר 2013 11:03 -
מעניין - נראה לי שזה באמת באג בWPF...
אני מציע לעקוף את זה ולשים Checkbox ישירות בתוך ה MenuItem , ולעצב את זה לפי הצורך
- סומן כתשובה על-ידי Eran Sharvit יום שלישי 15 ינואר 2013 09:41
יום שלישי 08 ינואר 2013 11:45