x:FactoryMethod Yönergesi
Bir XAML işlemcinin, yedekleme türünü çözümledikten sonra bir nesneyi başlatmak için kullanması gereken bir oluşturucu dışında bir yöntem belirtir.
XAML Öznitelik Kullanımı, x:Bağımsız Değişken Yok
<object x:FactoryMethod="methodname"...>
...
</object>
XAML Öznitelik Kullanımı, x:Öğe Olarak Bağımsız Değişkenler
<object x:FactoryMethod="methodname"...>
<x:Arguments>
oneOrMoreObjectElements
</x:Arguments>
</object>
XAML Değerleri
Değer | Tanım |
---|---|
methodname |
XAML işlemcilerinin olarak object belirtilen örneği başlatmak için çağırmış olduğu bir yöntemin dize yöntemi adı. Bkz. Açıklamalar. |
oneOrMoreObjectElements |
Fabrika yöntemi parametrelerini belirten nesneler için bir veya daha fazla nesne öğesi. Sipariş önemlidir; bağımsız değişkenlerin fabrika yöntemine geçirilme sırasını gösterir. |
Açıklamalar
Bir örnek yöntemiyse methodname
, nitelenemez.
Fabrika yöntemleri olarak statik yöntemler desteklenir. Statik bir yöntemsemethodname
, methodname
statik fabrika yöntemini tanımlayan sınıfı adlandıran typeName
bir typeName.methodName
birleşim olarak sağlanır. typeName
eşlenmiş xmln'lerdeki bir türe başvuruda bulunulduğunda ön eke uygun olabilir. typeName
türünden typeof(object)
farklı olabilir.
Fabrika yöntemi, ilgili nesne öğesini destekleyen türün bildirilen bir genel yöntemi olmalıdır.
Fabrika yöntemi, ilgili nesneye atanabilir bir örnek döndürmelidir. Fabrika yöntemleri hiçbir zaman null döndürmemelidir.
x:Arguments
fabrika yöntemlerinin imzaları için en iyi eşleşme ilkesiyle çalışır. Eşleştirme önce parametre sayısını değerlendirir. Parametre sayısı için birden fazla olası eşleşme varsa, parametre türü değerlendirilir ve en iyi eşleşme belirlenir. Değerlendirmenin bu aşamasından sonra hala belirsizlik varsa, XAML işlemci davranışı tanımlanmamıştır.
x:FactoryMethod
Yönerge işaretlemesi içeren nesne öğesinin türüne başvurmadığından, öğe kullanımı tipik anlamda özellik öğesi kullanımı değildir. Öğe kullanımının öznitelik kullanımından daha az yaygın olması beklenir. x:Arguments
(öznitelik veya öğe kullanımı) öğe kullanımıyla x:FactoryMethod
birlikte kullanılabilir, ancak bu özellikle Kullanım bölümlerinde gösterilmez.
x:FactoryMethod
bir öğe diğer özellik öğelerinin önüne, öğe olarak da sağlanan öğelerden x:Arguments
önce olmalı ve herhangi bir içerik/iç metin/başlatma metni önünde olmalıdır.
Ayrıca bkz.
.NET Desktop feedback