كيف يمكنني اكتشاف عندما تغيرت قيمة الخلية في Silverlight؟

StackOverflow https://stackoverflow.com/questions/2830654

سؤال

أنا أعمل في Silverlight ، في محاولة لمعرفة كيفية ضبط لون خط خلية الشبكة استنادًا إلى محتويات الخلية.

لديّ ObservableCollection مرتبط بمخطط بيانات ، وتنفيذ العناصر الخاصة بي inoTifyPropertyChanged بحيث يتم تحديث الشبكة أثناء تغيير القيم ؛ كل شيء يعمل بشكل مثالي ، بما في ذلك السماح لي بفرز العناصر والحفاظ على الفرز أثناء تحديث العناصر الأساسية.

أعلم أنه يمكنني استخدام حدث LoadingRow لتغيير الألوان ، ولكن الطريقة الوحيدة التي يمكنني من خلالها الحصول على الحدث لإطلاق النار هي عن طريق تغيير مصدر بيانات الشبكات ، وفي هذه الحالة يخرج الفرز الخاص بي من النافذة.

لذا ، ما أريده حقًا هو وسيلة لأي منهما

  1. قم بحلق الصفوف الموجودة في بيانات البيانات ، والعثور على الخلية التي أحتاجها ، وتغيير لونها أو
  2. قم بتنفيذ عمود مخصص يمكنني استخدامه لتعيين اللون ديناميكيًا.

المشكلة هي كيف في الواقع فعل أي من هذه الأشياء :).

هل كانت مفيدة؟

المحلول

يجب عليك استخدام بيانات DataBinding لهذا.

  1. ربط لون خط الخلية بمحتوى الخلية
  2. قم بإنشاء محول ivalueConverter يحول القيمة إلى لون اعتمادًا من احتياجاتك

انظر هنا للحصول على مثال جيد
http://weblogs.asp.net/joewrobel/archive/2009/01/25/conditional-formatting-in-the-silverlight-datagrid.aspx

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top