פורסם 2012 באוקטובר 313 שנים שלום התחלתי ללמוד wpf ויש לי בעיה ב-binding של TEXTBOX ל-PROPERTY מסויים. אז ככה, באופן כללי אני בונה משחק שש בש. הלוגיקה פחות או יותר גמורה, עכשיו נשאר לשלב אותה עם ה-GUI . על המסך שמתי TEXTBOX שמטרתו להציג את מספר הלבנים (נניח של הצבע הלבן) שנמצאים "בכלא", או במילים אחרות נאכלו. כמובן שיש לי PROPERTY שמחזיר את ה- int הרלוונטי, אבל הוא נמצא בתוך היררכיה של מחלקות ולכן אני לא יודע איך לפנות אליו בעזרת ה- wpf ולהציג אותו ב-TEXTBOX. מקווה שהבנתם, תודה מראש לעוזרים. הסבר קצר של ההיררכיה: פרויקט BL (שמופרד מפרויקט ה- GUI) ---> מחלקה ראשית LogicGame---> המחלקה LogicGame מכילה בתוכה אובייקט מסוג Player ---> המחלקה Player מכילה בתוכה אובייקט מסוג Jail (ה"כלא") ---> המחלקה Jail מכילה בתוכה את הפרופרטי BricksCount. ככה שאם רוצים לגשת לפרופרטי באופן רגיל אז עושים זאת בצורה הבאה: BL.LogicGame lg = new BL.LogicGame(); int res = lg.playerOne.jail.BricksCount;
פורסם 2012 באוקטובר 313 שנים http://stackoverflow.com/questions/1405739/mvvm-tutorial-from-start-to-finishממליץ לקרוא על MVVM
פורסם 2012 באוקטובר 313 שנים מחבר אני צריך עזרה במשהו ספציפי ב- wpf, את שאר הדברים אני אלמד כבר עם הזמן תוך כדי.. אבל תודה בכל מקרה . עוד מישהו יכול לעזור?
פורסם 2012 באוקטובר 313 שנים אם למשל ה- DataContext של ה- View שלך הוא LogicGame אז אתה יכול פשוט לעשות את זה<TextBlock Text="{Binding Player.Jail.BricksCount}"/>כמובן ש- Bricks Count חייב לעבוד עם INotifyPropertyChanged כדי שה- UI שלך יקבל עדכונים בכל פעם שהערך משתנה.אם אתה לא מכיר את הדברים האלה, אני ממליץ בחום לקרוא לפחות על הנושא של DataContext ו- DependencyProperties/INotifyPropertyChanged לפני שאתה ממשיך.
פורסם 2012 באוקטובר 313 שנים מחבר ש לי שלוש שאלות:1. אתה מתכוון ל- textBoxName.DataContext?2. למה TEXTBLOCK ולא TEXTBOX בקוד של הWPF?3. אם ה-BricksCount לא עובד כרגע עם INotifyPropertyChanged אז זה לפחות אמור להציג את הערך ההתחלתי שהוא 0?ותודה על העזרה אני אקרא את שאר הדברים.
פורסם 2012 באוקטובר 313 שנים 1. אני מתכוון לכך שלפחות אחד מהאבות של ה- TextBlock שלך יהיה מקושר ב- DataContext לאובייקט המידע שלך.2. TextBlock הוא פקד שרק מציג מחרוזות, ולא מאפשר לערוך אותן, TextBox הוא פקד שמאפשר גם עריכה. אם אין לך צורך בעריכה, עדיף להשתמש ב- TextBlock.3. כן.אגב, אני ממליץ לך להשתמש בכלי בשם Snoop כדי לחקור את האפליקציה שלך בזמן ריצה ולראות עם ה- Binding עובד או לא.אם זה לא עובד הוא גם יכול להגיד לך למה.
פורסם 2012 באוקטובר 413 שנים מחבר תודה! ה- snoop עזר לי למצוא את הבעיה - לא כל האובייקטים שמפנים בסופו של דבר ל- bricksCount הוגדרו כ- property.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.