سؤال

لدي بيانات ، مع itemEditor مثل NumericStepper في عدد قليل من الأعمدة. عندما يتم تحرير قيمة في DataGrid ، أود تحديث العديد من القيم المعروضة على الشاشة ، وأريد الاتصال updateValues() وظيفة.

أولاً ، أضفت هذه الوظيفة إلى itemEditEnd حدث DataGrid, ، ولكن يتم استدعاء الوظيفة قبل تحديث القيمة الجديدة إلى dataProvider وبالتالي ، فإن القيم التي لدي في الوظيفة هي القيم القديمة. هل هناك أي حدث آخر يتم إطلاقه بعد تحديث القيم في dataProvider؟ أم هل فاتني شيء؟

ثانياً ، حاولت وضع هذه الوظيفة في حدث تغيير كل منهما itemEditor (duh!) ، ولكن مرة أخرى ، يتم إطلاق حدث التغيير ، ولكن القيم في dataProvider هي القديمة.

هل هناك أي طريقة يمكنني جعل الوظيفة updateValues() يتم استدعاؤها ، في كل مرة يتم فيها تحرير القيمة وتحديثها في dataProvider, ، لأن هناك من أين أتناول القيم؟

شكرًا جزيلاً.

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

المحلول

"في مستمع الحدث الخاص بك ، يمكنك فحص البيانات التي تم إدخالها في محرر العنصر. إذا كانت البيانات غير صحيحة ، فيمكنك استدعاء طريقة PreventDefault () لإيقاف Flex من تمرير البيانات الجديدة إلى عنصر التحكم المستند إلى القائمة ومن إغلاق محرر." ((مصدر)

لذلك نعم ، يتم استدعاؤه قبل أن يحتوي DataProvider على البيانات.

هذا ما يجب أن تقرأه: اكتشاف تعديلات البيانات. يتحدث عن كل الأشياء نفسها. أولوية الحدث هي التذكرة. معقدة للغاية هي الطريقة المرنة. هتافات.

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