locked
גלגלת עכבר ב-FlipView לא עובד איזה מאפיין בSTYLE משפיע על זה?? RRS feed

  • שאלה

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

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

    אכן בתוך הSTYLE יש SCROLL נוסף שבו יש הגדרות מקומיות שונות מ-GRIDVIEW ניסיתי לשנות ולא עזר לי.

    שיניתי גם את ScrollViewer.IsHorizontalRailEnabled ל-TRUE ולא עזר.

    אשמח אם מישהוא ינסה את האובייקט FLIPVIEW ויתן משוב.


    צבי דויטש

    יום רביעי 24 יולי 2013 08:27

תשובות

  • לאחר שקצת חפרתי

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

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

            private void flipview_PointerWheelChanged(object sender, PointerRoutedEventArgs e)
            {
                double dlt = e.GetCurrentPoint(flipview).Properties.MouseWheelDelta;
                double ee = (1 / verticalBar.ActualWidth * (dlt / 100d));
    
                if (e.GetCurrentPoint((UIElement)sender).Properties.MouseWheelDelta >= 0)
                {
                    flipviewScrollViewer.ScrollToHorizontalOffset(flipviewScrollViewer.HorizontalOffset + ee);
                }
                else if (e.GetCurrentPoint((UIElement)sender).Properties.MouseWheelDelta < 0)
                {
                    flipviewScrollViewer.ScrollToHorizontalOffset(flipviewScrollViewer.HorizontalOffset + ee);
                }
            }

    את ה ScrollViewer הוצאתי מה-FLIPVIEW.

    הבעיה בזה שהאירוע נוצר על פי שינוי שיני הגלגלת. מאפיין הדלתא מחזיר את המהירות בין מעבר בין שן לשן בגלגל. ואם נשנה את מיקום הגלילה על פי זה, זה יוצג בקפיצות ולא במעבר חלק. אם היה פה מאפיין XML היה אפשר לעשות אנימציה אבל אפשר לשנות את הערך רק במתודה של  ScrollToHorizontalOffset() ואם אני יהיה נורא משועמם יהיה אפשר לפתוח טרידים ולהריץ לפי טיימר את שינוי המיקום.

    אם למישהוא יש פתרון קצת יותר נורמלי אשמח לדעת


    צבי דויטש

    • סומן כתשובה על-ידי Eran Sharvit יום שני 29 יולי 2013 12:40
    יום רביעי 24 יולי 2013 17:10