اكتب محوّلات وملحقات ترميز ل XAML
نوع المحوّلات وملحقات ترميز تقنيات الثاني أن أنظمة نوع XAML و XAML الكائن باستخدام كتاب إلى إنشاء مكونات الرسم البياني للكائن. وعلى الرغم من أن تشترك فيها بعض الخصائص، نوع المحوّلات وملحقات ترميز تمثيل مختلف في دفق عقدة XAML. في الوثائق، محولات نوع ملحقات ترميز وبنيات مماثلة في بعض الأحيان يشار إليها بكل كـ قيمة المحولات.
يشمل هذا الموضوع على الأقسام التالية.
محولات القيم
محولات الأنواع
ملحقات العلامات
Serializers القيمة
محوّلات القيمة غير ذلك
اكتب محوّلات وملحقات ترميز في المختلط
الخدمة سياق لقيمة محوّل
محولات القيم
في XAML، القيمة محوّلات مستخدمة لوحدات سيناريو متعددة. يسرد التالية الأنواع المختلفة لقيمة محوّلات في XAML:
نوع المحول
ملحق ترميز
القيمة مسلسل
تتعلق بفئة أو دعم الفئة التي توفر المعلومات المنطقية لبناء جملة نصية XAML
محولات الأنواع
في تعريف الخدمات في.NET Framework XAML، تكون المحولات نوع الفئات ينحدر من CLR TypeConverterفئة. TypeConverterهي فئة التي تمت فيMicrosoft NET Framewor.حتى قبل وجود XAML. كان غرضه الأصلي لدعم الإطارات خصائص أو مشابهة metaphors التحرير يستند إلى نص للخصائص في IDE. تقديم XAML لبرنامج.NET Framework يستخدم TypeConverterلتحويل بناء نص (كما تم العثور عليه في القيمة سمة، أو عقدة القيمة XAML) إلى الكائنات.TypeConverterيمكن أن تستخدم لإجراء تسلسل لقيمة كائن لنص بناء الجملة. TypeConverterتم استخدامه أيضا في تطبيقات XAML الخاصة بإطار عمل سابقة فيWindows Presentation Foundation (WPF)وWindows Communication Foundation (WCF). للحصول على مزيد من المعلومات حول TypeConverterفي XAML، راجع نوع محوّلات XAML نظرة عامة.
ملحقات العلامات
في.NET Framework XAML الخدمات التطبيق، تكون ملحقات ترميز فئات ينحدر من MarkupExtensionفئة. ملحقات ترميز تنتمي مفهوم في ترتيب هو النموذج هو قد تم إنشاؤها بواسطة لغة XAML. يمكنك اعتبار ملحق ترميز أنه شيء مثل تتابع هروب القابلة للامتداد الذي يستدعي إلى الخدمة فئة لتوفير المنطق. تتعرف من ترميز، معالجات XAML عالمياً على ملحق علامات مع تسلسل نص الذي يبدأ بفتح متعرجة brace {في سلسلة نصية.
ملحقات ترميز تختلف من نوع محوّلات. نوع محوّلات مقترنة بشكل عام أنواع أو استدعاء الأعضاء، وعند إنشاء الرسم البياني لكائن أو إنشاء تسلسل يواجه بناء نص المقترن بهذه الوحدات. تقترن ملحقات ترميز مع الدعم واحدة الخدمة الفئة، ولكن يمكن تطبيقها لأي القيمة العضو (على الرغم من ذلك، لاحظ أنه يمكن تطبيق ملحق ترميز الخاصة بك عن عمد بتقييد الاستخدامات الخاصة به إلى أنواع وجهة، أو الأعضاء معينة بواسطة استخدام سياق الخدمة.). يمكن يمنع استخدامات ملحق ترميز اقتران محوّل نوع والتي قد تكون موجودة، أو يمكن أن تستخدم إلى قم بتحديد القيمة سمة للأعضاء طريقة أخرى قد لا باعتماد بناء نص.
ل المزيد من المعلومات حول ترميز ملحق تطبيق نقش XAML، راجع ملحقات ترميز XAML نظرة عامة.
ملاحظة |
---|
MarkupExtensionو ValueSerializerأنواع كل منهما في System.Windows.Markupمساحة الاسم، لا System.Xamlمساحة الاسم.وهذا لا يعني التي هذه أنواع الخاصة Windows Formsالتقنيات التي بملء مساحات الاسم CLR التي تحتوي على السلسلة وإلا WPF أو Windows.MarkupExtensionوValueSerializerفي تجميع النظام.Xaml و أن لا يوجد تبعية إطار عمل معينة.الأنواع موجودة في مساحة أسماء المصادر CLR .NET Framework 3.0، وتبقى في ذلك مساحة الاسم CLR في .NET Framework 4إلى تجنب فصل المراجع في مشاريع WPF موجود.لمزيد من المعلومات، راجع أنواع تم نقلها من WPF إلى النظام.Xaml. |
Serializers القيمة
ValueSerializerهو محوّل نوع متخصصة التي تم تحسينها لتحويل كائن إلى سلسلة. ValueSerializerلقد لا تطبق XAML ConvertFromأسلوب في الجميع. ValueSerializerتطبيق يحصل على الالخدمات في طريقة مشابهة إلى TypeConverterالتنفيذ. توفير الأساليب الظاهرية على إدخال contextمعلمة. contextالمعلمة هو من النوع IValueSerializerContext، الذي يرث من IServiceProviderالواجهة وله GetServiceالأسلوب.
في النظام نوع XAML، ولتطبيقات كاتب XAML بمعالجة تكرار حلقي عقدة XAML للسلسلة، محوّل القيمة المقترن بنوع أو عضو هو أعدها الخاص به XamlType.ValueSerializerخاصية. المعني لكتاب XAML إجراء إنشاء تسلسل هو ذلك إذا XamlType.TypeConverterexهوt XamlType.ValueSerializerexهوts، ثم يجب أن يتم استخدام نوع المحول لمسار تحميل ومسلسل القيمة سيتم استخدامه للحفظ مسار. إذا XamlType.TypeConverterexهوts ولكن XamlType.ValueSerializerهو فارغة، ثم نوع المحول هو المستخدمة للحفظ مسار أيضا.
محوّلات القيمة غير ذلك
محوّل القيمة هو القابلة للامتداد خارج أنماط معينة من محوّل نوع أو ملحق علامات. على الرغم من ذلك، هذا التخصيص هو كذلك تتطلب redefinition النظام نوع XAML كـ الموفرة من قبل الخدمات XAML إطار عمل.NET. يحتوي النظام نوع XAML الموجود تمثيلات وأنظمة إعداد التقارير لنوع محوّلات، ملحقات ترميز، والقيمة serializers، ولكن ليس للنماذج المخصصة لتحويل القيمة. إذا كنت ترغب في إنشاء برامج تحويل القيمة مخصصة، يجب استخدام XamlValueConverter<TConverterBase>نوع.
اكتب محوّلات وملحقات ترميز في المختلط
ملحقات ترميز و تستخدم المحولات نوع لمواقف مختلفة في XAML. على الرغم من سياق هو متاحة للاستخدامات ملحق ترميز، وسلوك تحويل النوع الخصائص الموقع يقدم ملحق علامات القيمة هو بشكل عام هو عدم تدقيق في تطبيقات ملحق ترميز. بمعنى آخر، حتى إذا كان ملحق علامات بإرجاع سلسلة نصية كبه ProvideValueإخراج، سلوك تحويل النوع في هذه السلسلة كما ينطبق تشغيل خاصية معينة أو نوع القيمة الخاصية هو لم يتم استدعاؤه. بشكل عام، هو الغرض من ملحق ترميز معالجة سلسلة وقم بإرجاع كائن بدون أي نوع متعلق بالمحوّل.
الخدمة سياق لقيمة محوّل
تطبيق محوّل القيمة، غالباً ما تحتاج عند الوصول إلى سياق الذي المحوّل القيمة هو تطبيقها. ويعرف هذا سياق كـ سياق الخدمة. قد تضمين معلومات مثل سياق المخطط النشط XAML سياق الخدمة، الوصول إلى نوع التعيين النظام في سياق المخطط XAML و XAML كائن الكاتب توفير، وغيرها. لمزيد من المعلومات حول سياقات الخدمة متوفرة لمحول القيمة وكيفية الوصول إلى الخدمات التي قد توفر سياق خدمة، راجع الخدمة السياقات متوفر نوع محوّلات و ترميز ملحقات.