2014-03-31 1 views
1

xaml 디자이너에서 UserControl을 상속하는 클래스를 사용하고 싶지만 어떤 이유로 클래스가 표시되지 않습니다. 내가 할 수있는 모든 코드를 제거하고 간단한 작업을 시도했지만 여전히 작동하지 않습니다. 이 클래스는네임 스페이스에 이름이 없지만 intellisense가 말합니다.

namespace StationHouse 
{ 
    public class TryMe : UserControl {} 
} 

내 XAML이

<MyTypes:TryMe x:Class="StationHouse.Operations.Contact" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:MyTypes="clr-namespace:StationHouse" 

모양이다 그러나 나는 오류를 얻을 :

The name "TryMe" does not exist in the namespace "clr-namespace:StationHouse"

심지어 낯선 사람, 나는 XAML의 주요 섹션으로 가서 MyTypes:를 입력하면 그런 다음 인텔리 센스가 TryMe을 표시하지만 일단 선택하면 동일한 오류가 발생합니다. 응용 프로그램을 다시 작성하고 Visual Studio를 닫거나 다시 열어 보았지만 행운은 없습니다. 이견있는 사람?

+0

두 어셈블리 모두 동일한 .NET 프레임 워크를 대상으로 할 수 있습니다. 한 어셈블리가 .NET 4이고 다른 어셈블리가 .NET 4.5 일 때 이런 문제가 발생했습니다. –

답변

0

이 문제를 일으킬 수있는 여러 가지 사항이 있지만 확실한 원인은 컴파일러와 관련이 있습니다. 기본적으로 인터페이스에서 추상 클래스로 일부 구현을 변경하여 많은 컴파일러 오류가 발생했습니다. 올바른, 새로운 클래스를 참조하도록 내 xaml을 변경하려고했을 때, 배경 컴파일러가 모든 오류로 인해이를 올바른 클래스로 인식하는 데 어려움을 겪고 있었다고 생각합니다.

내가 한 것은 여러 가지를 주석 처리하여 마침내 내 새로운 추상 클래스를 컴파일하고 위의 오류가 사라지도록 허용했습니다. 그런 다음 문제를 하나씩 주석 처리하고 문제를 해결하지 않았습니다.

관련 문제