2013-02-16 8 views
6

Otrzymuję falisty wiersz pod szóstą linią kodu poniżej, podając błąd podany w tytule. Właśnie wyemigrowałem do VS 2012 i wszystko działało dobrze w VS 2010. Czuję, że może problem jest naprawdę gdzie indziej ... Czy ktoś może mi powiedzieć, czy faktycznie coś jest nie tak z tym xaml?Atrybut "Klucz" może być użyty tylko w elemencie zawarty w "IDictionary"

<Application x:Class="SageWpf.App" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      xmlns:local="clr-namespace:SageWpf"> 
    <Application.Resources> 
     <ResourceDictionary x:Key="rd"> 
      <ResourceDictionary.MergedDictionaries> 
       <ResourceDictionary> 
        <local:AppBootStrapper x:Key="bootstrapper"/> 
        <local:EffectConverter x:Key="effectConverter"/> 
        <local:VisibilityConverter x:Key="visibilityConverter"/> 
       </ResourceDictionary> 
      </ResourceDictionary.MergedDictionaries> 
     </ResourceDictionary> 


    </Application.Resources> 
</Application> 

Odpowiedz

10

<ResourceDictionary x:Key="rd"> jest nieprawidłowy. Usuń stamtąd x:Key.

Również ... to zły sposób na uporządkowanie zasobów. Zmień go na adres:

<Application.Resources> 
    <ResourceDictionary> 
     <local:AppBootStrapper x:Key="bootstrapper"/> 
     <local:EffectConverter x:Key="effectConverter"/> 
     <local:VisibilityConverter x:Key="visibilityConverter"/> 
    </ResourceDictionary> 
</Application.Resources> 

używać tylko połączyła Słowniki jeśli masz zasobów zdefiniowanych w innym pliku XAML i chcesz je importować tutaj.

+0

Okej, zastanawiałem się, dlaczego tak musi być, ale odszedł od Caliburn.Micro przykład zrobił to z połączonym słownikiem. Szczerze mówiąc, nie pamiętam dokładnie, dlaczego dodałem teraz x: Key = "rd", ale mogłem przysiąc, że naprawiłem jakiś inny błąd, który dostałem ... i jestem prawie pewien, że działało w 2010 roku, ale może po prostu biorę szalone pigułki. Problem polega na tym, że wciąż mam ten sam błąd z twoim rozwiązaniem, ale linia falująca znajduje się na linii kozaków. –

+0

poprawione. Zobacz moją edycję. –

+0

Częściowo się pomyliłem ... błąd pod linią bootstrapperów był czymś zupełnie innym, a ja to naprawiłem; jednak nadal otrzymuję ten sam oryginalny komunikat o błędzie. Skrętna linia znajduje się tuż pod znakiem "<" znacznika otwierającego. –

Powiązane problemy