2013-07-26 3 views
6

Ist diese XAML-Code in App.xaml:MergedDictionaries in XAML neu geschrieben Code

<Application x:Class="Company.Product.App" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    > 
    <Application.Resources> 
     <ResourceDictionary> 
      <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="/Company.Windows.Themes.Theme1;component/Themes/System.Windows.xaml"/> 
      <ResourceDictionary Source="/Company.Windows.Themes.Theme1;component/Themes/Company.Windows.Controls.xaml"/> 
      <ResourceDictionary Source="/Company.Windows.Themes.Theme1;component/Themes/Company.Windows.Controls.Data.xaml"/>    
      </ResourceDictionary.MergedDictionaries> 
     </ResourceDictionary> 
    </Application.Resources> 
</Application> 

entspricht:

App.xaml:

<Application x:Class="Company.Product.App" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    > 
</Application> 

und in App.xaml.cs:

public partial class App : Application 
{ 
    public App() 
    {    
     Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() 
     { 
      Source = new Uri("/Company.Windows.Themes.Theme1;component/Themes/System.Windows.xaml", UriKind.RelativeOrAbsolute) 
     }); 
     Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() 
     { 
      Source = new Uri("/Company.Windows.Themes.Theme1;component/Themes/Company.Windows.Controls.xaml", UriKind.RelativeOrAbsolute) 
     }); 
     Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() 
     { 
      Source = new Uri("/Company.Windows.Themes.Theme1;component/Themes/Company.Windows.Controls.Data.xaml", UriKind.RelativeOrAbsolute) 
     }); 
    } 
} 



Eine Randbemerkung: Muss ich Application.Current.Resources.MergedDictionaries.Clear nennen(); in dieser Situation, bevor ich füge die fusionierten Wörterbücher hinzu? Ich denke in diesem Moment ist die Standard MergedDictionaries-Sammlung zunächst leer.

Antwort

4

Ans1) Ja absolut. Sie sind gleich.

ANS2) Nein, Sie nicht zu Clear() sie brauchen denn es keine MergedDictionaries sind und daher Count ist 0.

+0

Vielen Dank für Sie schnell - fast sofort - zu beantworten. :) – kajovajo