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 objectbelirtilen ö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.