Compartilhar via


Diretiva de x: FactoryMethod

Especifica um método diferente, por exemplo, um construtor que um processador XAML deve usar para inicializar um objeto depois de resolver o seu tipo de backup.

Uso do atributo XAML, sem argumentos do x:

<object x:FactoryMethod="methodname"...>
  ...
</object>

Uso do atributo XAML, x: argumentos como elemento (s)

<object x:FactoryMethod="methodname"...>
  <x:Arguments>
    oneOrMoreObjectElements
  </x:Arguments>
</object>

XAML Values

methodname

O nome do método de seqüência de caracteres de um método que chamam de processadores XAML para inicializar a instância especificada como object. Consulte comentários.

oneOrMoreObjectElements

Um ou mais elementos de objeto para objetos especificar parâmetros de método de fábrica. Ordem é importante; Isso significa que a ordem na qual os argumentos devem ser passados para o método de fábrica.

Comentários

Se methodname é um método de instância não pode ser qualificado.

Métodos estáticos, como os métodos de fábrica são suportados. Se methodname é um método estático, methodname é fornecido como um typeName.methodName combinação, onde typeName nomes de classe que define o método estático de fábrica. typeName podem ser qualificados de prefixo se referir a um tipo de um xmlns mapeada. typeName pode ser um tipo diferente typeof(object).

O método de fábrica deve ser declarado como um método público do tipo que faz o elemento de objeto relevante.

O método de fábrica deve retornar uma instância que pode ser atribuído ao objeto relevante. Os métodos de fábrica nunca devem retornar nulos.

x:Argumentsopera em um princípio de melhor correspondência para assinaturas de métodos de fábrica. Correspondência avalia a contagem de parâmetro primeiro. Se houver mais de uma correspondência possível para uma contagem de parâmetro, tipo de parâmetro é avaliada e melhor correspondência é determinada. Se ainda houver ambigüidade após essa fase de avaliação, o comportamento do processador XAML é indefinido.

O x:FactoryMethod o uso do elemento é a propriedade utilização de elemento no sentido comum, porque a marcação de diretriz não faz referência tipo. ao elemento object contendo Espera-se o uso do elemento é menos comum do que o uso do atributo. x:Arguments(uso do elemento ou atributo) pode ser usado juntamente com x:FactoryMethod uso do elemento, mas isso não esteja especificamente exibido no uso seções.

x:FactoryMethodcomo um elemento deve preceder a outros elementos de propriedade, devem preceder qualquer x:Arguments também são fornecidos como elementos e devem preceder qualquer texto de conteúdo/interna/inicialização de texto.

Consulte também

Outros recursos

x: argumentos diretiva