2 WPF Theme (skin) Service Pattern Part

Sunday, June 1, 2014

אחרי שבפוסט הקודם הדגמנו איך בנינו לבד מנגנון פשוט להחלפת צבע לאפליקציה שלנו ננסה עכשיו לבחון עוד שיטות. עם דגש על אוריינטציה מיקרוסופטית הפתרון מתחיל בזה שנכתוב את העיצובים שלהו בתוך resource-dictionary ואז נייצא אותו לאסמבלי נפרד. למה? כי אסמבלי נטען להוסיף לכל פרוייקט בכל מצב. נפתח פרוייקט מסוג WPF. (ניתן כמובן לפתוח סתם DLL, אבל אז נחסר את כל הספריות של הUI. יותר קצר למחוק את החלון ) נוסיף לו ResourceDictionary עבור חבילת הסטיילים המבוקשת. וקלאס ריק עם אותו השם. (הסברים מיייד) כמובן נדרשת השקעה לא מעטה לעצב באמת את התכולה של קוד הxaml. את הדוגמא שלנו נבנה עבור חלון פשוט שבו כפתור וצורה אליפטית. עכשיו צריך...
תגובה אחת

WPF Theme (skin) Service Pattern Part 1

Saturday, May 31, 2014

אפליקציות רבות תומכות בהחלפת מראה ו\או התנהגות בלחיצה על כפתור. כדי שהתכנית שלכם תתמוך ביכולת כזאת יש צורך בתכנון מראש. זה אולי לא ממש Pattern אבל די נפוץ באפליקציות בכל פלטופרמה שהיא הרעיון הוא להתאים מראה שונה למשתמש בלחיצה אחת. הבעיה פה היא: א. טכנית החלפת UI (נניח צבע רקע כדוגמא בסיסית). ב. אני לא יכול מהVM לפנות לView כי אז אני שובר ארכיטקטורה! אבל נתעלם מזה כרגע למקרה ששכחנו את יסודות הMVVM הקשר בין VM ל VIEW הוא באמצעות binding ואין כיום טכנולוגיית binding שיודעת להחליף resource. בצורה ישירה (על Dynamic נדבר בהמשך) בוא נניח שיש לי מצב Dark ומצב Light לתכנית שלי, נתחיל...
אין תגובות