3

XElements から XAML を生成しようとしています。

<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>

ただし、x:Typeマークアップ拡張機能に問題があります。出力 XAML にプレフィックスを名前空間p:にマップさせる方法がわからないため、プレフィックスを解決できません。phttp://schemas.microsoft.com/winfx/2006/xaml/presentation

XML 名前空間のプレフィックスが生成される方法を制御する方法はありますか? x:Typeまたは、プレフィックスの代わりに XML 名前空間名をマークアップ拡張機能に強制することは可能ですか?

4

1 に答える 1

1

私はそれを見つけました:

new XAttribute(XNamespace.Xmlns + "p", "http://schemas.microsoft.com/winfx/2006/xaml/presentation"); 
于 2010-09-08T18:42:36.587 に答える