2011-07-21 56 views
1

我的generic.xaml主要問題是Viewbox已經移動了程序集。如何爲Silverlight 3和Silverlight 4創建generic.xaml?

如何爲一個generic.xaml文件命名空間,以便在SL3和SL4中編譯的Viewbox位置?

我看着http://www.removingalldoubt.com/PermaLink.aspx/defa2a7d-b1e9-49eb-b8c8-438348be8d18但無濟於事......

注:有兩個屬性XmlnsPrefix和XmlnsDefinition,你可以在Assembly.cs地方。

在此先感謝。

+1

在這裏討論的同樣的問題:http://stackoverflow.com/questions/6645368/silverlight-3-and-silverlight-4-conditional-xaml/6646974#6646974 – ColinE

回答

0

最後放棄了XmlnsDefinition和XmlnsPrefix,因爲我無法正常工作......在WPF應用程序中,有趣的是設計器窗口可以解決引用,但編譯器無法......去圖。

我使用cpp預處理從博客解決... http://blogs.msdn.com/b/blemmon/archive/2009/04/29/using-the-preprocessor-to-share-incompatible-xaml-between-sl-and-wpf-part-1.aspx

我修改PreprocessXaml只修改generic.xaml。

<Target Name="PreprocessXaml"> 
<ItemGroup> 
    <!-- Convert the DefineConstants property into an ItemGroup --> 
    <XamlConstants Include="$(DefineConstants)" /> 
</ItemGroup> 
<PropertyGroup> 
    <!-- Convert the XamlConstants ItemGroup into a list command line switches for CL.exe --> 
    <CommandLineDefineConstants>@(XamlConstants->'/D%(Identity)',' ')</CommandLineDefineConstants> 
</PropertyGroup> 
<!-- Run the preprocessor --> 
<Exec Command="CL.exe /nologo /EP $(CommandLineDefineConstants) &quot;Themes/generic.i.xaml&quot; &gt; Themes/generic.xaml" /> 
<!-- Replace the pages with the preprocessed pages so that subsequent targets will use the preprocessed files -->