2010-07-14 4 views
3

J'essaie de générer XAML à partir de XElements.Comment contrôler les préfixes d'espaces de noms dans un document XML généré par XAML généré par XmlWriter avec l'extension de balisage x: Type

<Style xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> 
    <Style.BasedOn> 
    <StaticResource> 
     <StaticResource.ResourceKey> 
     <Type xmlns="http://schemas.microsoft.com/winfx/2006/xaml"> 
      <Type.TypeName>p:Window</Type.TypeName> 
     </Type> 
     </StaticResource.ResourceKey> 
    </StaticResource> 
    </Style.BasedOn> 
    ... 
</Style> 

Cependant, j'ai un problème avec l'extension de balisage x:Type. Il est impossible de résoudre le préfixe p:, car je ne sais pas comment forcer la sortie XAML pour mapper le préfixe p à l'espace de noms http://schemas.microsoft.com/winfx/2006/xaml/presentation.

Existe-t-il un moyen de contrôler comment les préfixes d'espaces de noms XML seront générés? Ou est-il possible de forcer l'extension de balisage x:Type à prendre le nom de l'espace de noms XML au lieu du préfixe?

Répondre

1

J'ai trouvé que:

new XAttribute(XNamespace.Xmlns + "p", "http://schemas.microsoft.com/winfx/2006/xaml/presentation"); 
+0

Où voulez-vous mettre cet attribut? –

+0

Sur tout élément que je veux ... –

Questions connexes