XAML 파일에 어셈블리를 추가하면 오류가 발생하는 이유는 무엇입니까?
-
07-07-2019 - |
문제
XAML 파일로 읽는 응용 프로그램이 다음과 같이 동적으로 있습니다.
StreamReader sr = new StreamReader(pathAndFileName);
this.Content = XamlReader.Load(sr.BaseStream);
로드 된 XAML 파일 중 하나에서 (모두 코드가 제거되었습니다), 이것은 작동합니다.
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:DynamicXaml123">
<StackPanel Margin="10" HorizontalAlignment="Left">
<TextBox Height="23" Width="100" Text="{Binding FirstName}" />
<TextBox Height="23" Width="100" Text="{Binding LastName}" />
<TextBox Height="23" Width="100" Text="{Binding Age}" />
<local:FieldEmailView></local:FieldEmailView>
</StackPanel>
</UserControl>
그러나 이것은 "Tag 'FieldEmailView'오류가 XML 네임 스페이스 'Clr-Namespace : DynamicXaml123; 어셈블리 = DynamicXaml123'에 존재하지 않습니다."
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:DynamicXaml123;assembly=DynamicXaml123">
<StackPanel Margin="10" HorizontalAlignment="Left">
<TextBox Height="23" Width="100" Text="{Binding FirstName}" />
<TextBox Height="23" Width="100" Text="{Binding LastName}" />
<TextBox Height="23" Width="100" Text="{Binding Age}" />
<local:FieldEmailView></local:FieldEmailView>
</StackPanel>
</UserControl>
어셈블리 참조를 제거하면 오류가 발생합니다.
Message=""XmlNamespace", "Assembly" oder "ClrNamespace"
XAML에서 읽을 때.
어셈블리 참조를 여기에 포함시킬 수없는 이유는 무엇입니까?이 작업을 수행하려면 무엇을 변경/점검해야합니까?
해결책
이것을로드하면 어셈블리 참조를 해결할 수 있어야합니다. 다시 말해,이 어셈블리는 응용 프로그램이 참조 할 수 있도록 이용할 수 있어야합니다.
제휴하지 않습니다 StackOverflow