2012-10-14 9 views
13

Mam dziwny problem z dodaniem odwołania do biblioteki dll. Mam aplikacji WPF i staram się korzystać z biblioteki WPF MDI: http://wpfmdi.codeplex.com/Nie znaleziono odwołania do zespołu w XAML, ale kod kompiluje się, gdy odwołuje się do klasy xaml.cs

Jak podano w instrukcji (które są bardzo niejasne), I prawym przyciskiem myszy na odniesień w VS2012, kliknął Add reference.., kliknął Browse.. i dodał moją bibliotekę dll, którą pobrałem.

Następnie dodałem następujący wiersz w XAML mojego okna: xmlns:mdi="clr-namespace:WPF.MDI;assembly=WPF.MDI" zgodnie z instrukcjami.

Jednak gdy próbuje dodać <mdi:MdiContainer> w XAML, wyświetlane są następujące komunikaty o błędach:

The type 'mdi:MdiContainer' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built.

The name "MdiContainer" does not exist in the namespace "clr-namespace:WPF.MDI;assembly=WPF.MDI".

To jest mój XAML:

<Window x:Class="QueryBuilder.Table" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mdi="clr-namespace:WPF.MDI;assembly=WPF.MDI" 
     Height="300" Width="300" WindowStyle="ToolWindow" ResizeMode="NoResize" ShowInTaskbar="False"> 
</Window> 

ten problem frustruje mnie przez cały dzień. Wypróbowałem prawie wszystko, co można sobie wyobrazić. Warto zauważyć, że zainstalowałem przykładową aplikację z witryny biblioteki i mogę ją uruchomić bez żadnych problemów. Poza tym dodałem to do klasy xaml.cs mojego projektu: WPF.MDI.MdiContainer d = new WPF.MDI.MdiContainer(); i kompiluje się bez żadnych problemów.

Należy również pamiętać, że mój początkowy problem został zadany here i żadna z sugestii nie zadziałała. Problem jednak teraz się zmienił z powodu powyższego akapitu, który wydaje się wskazywać, że kod został pomyślnie skompilowany w kodzie, ale nie w pliku XAML.

EDYTOWANIE: Chciałbym również dodać, że jestem w stanie przeglądać kod odniesienia zespołu, jak pokazano poniżej.

enter image description here

Odpowiedz

9

mam w końcu rozwiązać problem samodzielnie - zamiar opuścić tę odpowiedź tutaj nie rozczarować ktoś ma ten sam problem jakiś czas. Dodanie samego rozwiązania do ścieżki referencyjnej zespołu rozwiązuje problem! Szkoda, że ​​to nie jest udokumentowane ...

EDYTOWANIE: Aby wyjaśnić, co zrobiłem było dodać rozwiązanie, a nie dll. Innymi słowy, dodałem rozwiązanie MDI ze wszystkimi jego klasami. Dotyczy to oczywiście bibliotek DLL, w których dostępny jest również kod źródłowy.

+6

Czy możesz wyjaśnić to na przykładzie? Nie jestem pewien, co masz na myśli. – msnider

+0

Dodano pewne wyjaśnienia. Mam nadzieję, że to pomoże, ponieważ ten problem był dla mnie wyjątkowo frustrujący! –

+0

Tak, ale nie mam rozwiązania, ale tylko DLL =/ – Tito

6

Jeśli Visual Studio będzie nadal narzekać i podkreślać, nawet po wypróbowaniu wszystkiego, po prostu zakończyć proces XDesProc.exe za pomocą Menedżera zadań, a następnie przebudować rozwiązanie. Wsparcie dla WPF i XAML w Visual Studio to straszny niedobry kawałek gówna.

+0

Wow. Dzięki. To doprowadzało mnie do szaleństwa. – int21h

+0

To również rozwiązało mój problem. –

1

Dostałem plik sln z http://wpfmdi.codeplex.com/. Buduj ten projekt i używaj nowego .dll z bin, użyłem go, potem zadziałało dobrze.

Powiązane problemy