سؤال

أنا أبحث عن أفضل الممارسات (أو أي حل عامل) للسيناريو التالي:

انا لدي Employee صف دراسي:

public class Employee
{
    public string DisplayName
    { get; set; }

    // It is important that this method has a parameter
    public string GetSomething(string param)
    { return param + DisplayName; }
}

انا املك List<Employee> اكتب كائن ملزم بمجموع غوص في XAML.

يظهر اسم العرض لكل موظف بشكل صحيح في COMBOBOX، ولكن كيف يمكنني عرض قيمة الإرجاع بطريقة GetSomething مع المعلمة الدقيقة لجميع الموظفين لكل موظف بدلا من اسم العرض؟

ربط طريقة جيدة، ولكن كيف يمكنني ربط مثيلات متعددة (لكل كائن موظف في القائمة)؟ مع ال ObjectDataProvider يمكنني فقط ربط مثيل واحد بالضبط (أو فئة)، وليس كل كائن موظف لقائمة الموظفين.

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

المحلول

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

نصائح أخرى

أوافق مع Kent Boogaart الذي يستخدم نموذج العرض هو بالتأكيد الطريقة المرجوة للذهاب (بالإضافة إلى أفضل الممارسات).

احتمال آخر استخدمته من قبل (قبل أن أعرف المزيد عن عرض النموذج المشاهد) هو استخدام bindingconverter.. وبعد ربط إما إلى فئة الموظف الخاصة بك أو إلى خاصية DisplayName وتمرير المعلمة كمعلمة إلى محول الربط.

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