WPF תיבת טקסט עשיר
-
יצרתי מחלקה יורשת מתיבת טקסט עשיר, ועשיתי מאפיין טקסט במחלקה החדשה, כעת אני רוצה להפוך את המאפיין הזה למאפיין תלות כדי להשתמש איתו עם בינדינג, כדי שאוכל לשים את הפקד טקסט עשיר החדש בתוך קומבו איך עושים את זה?
Public Property Text() As String Get Return New TextRange(Me.Document.ContentStart, Me.Document.ContentEnd).Text End Get Set(value As String) Dim TR As New TextRange(Me.Document.ContentStart, Me.Document.ContentEnd) TR.Text = value End Set End Property
התבנית הפשוטה של מאפיין תלות הוא כזה:
Public Property Age() As Integer Get Return CInt(GetValue(AgeProperty)) End Get Set SetValue(AgeProperty, value) End Set End Property Public Shared ReadOnly AgeProperty As DependencyProperty = DependencyProperty.Register("Age", GetType(Integer), GetType(Person), New UIPropertyMetadata(0))
פורסם במקור בפורום CODE613 ב30/01/2014 20:59 (+02:00)
-
אתה שואל או עונה????
פורסם במקור בפורום CODE613 ב03/02/2014 08:50 (+02:00)
-
איפה אתה רואה פה תשובה?
רק הבאתי את המאפיין הרגיל איך הוא נראה שבעצם הערך המוחזר הוא לא סתם ערך השמור באיזה משתנה אלא פעולת קוד שמביאה תוצאה מסויימת, ואחר כך הבאתי צורה קלאסית של מאפיין תלות ששם רואים שהמאפיין הוא 'רק' מכניס ומוציא ממשתנה התלות ולא עושה חישובים עם הקוד, אז השאלה איך משלבים את זה.
אני מקווה שזה מובן, אם לא אסביר יותר.פורסם במקור בפורום CODE613 ב03/02/2014 08:55 (+02:00)
-
איפה אתה רואה פה תשובה?
רק הבאתי את המאפיין הרגיל איך הוא נראה שבעצם הערך המוחזר הוא לא סתם ערך השמור באיזה משתנה אלא פעולת קוד שמביאה תוצאה מסויימת, ואחר כך הבאתי צורה קלאסית של מאפיין תלות ששם רואים שהמאפיין הוא 'רק' מכניס ומוציא ממשתנה התלות ולא עושה חישובים עם הקוד, אז השאלה איך משלבים את זה.
אני מקווה שזה מובן, אם לא אסביר יותר.אכן יש צורך בהסבר נוסף.
בעיקר להפריד בין השאלה במקרה של תיבת הטקסט, לבין הרעיון של מאפיין תלותי.
אתה לא אמור לשלב בין מאפייין למאפיין תלות, אתה אמור ליצור מאפיין תלות ולתת לו גישה ממאפיין רגיל בדיוק כמו הדוגמה של Age.
אני מנחש שאתה שואל איפה לעשות את הקוד הביצוע במקרה של SET.
אז התשובה היא שימוש בPropertyChangedCallback כמו שכתוב פה במקטע Coerce Value Callbacks and Property Changed Events.פורסם במקור בפורום CODE613 ב05/02/2014 12:32 (+02:00)