2014-07-18 1 views
0

응용 프로그램에서 예제 코드를 사용하지만 UserControl에서 사용해야하고 응용 프로그램에 액세스 할 필요가 없습니다. .Xaml이 누군가를 elses 프레임 워크에 가고 있기 때문에 :WPF mahapps UserControl에서 예외가 발생했습니다 'styles/colors.xaml'리소스를 찾을 수 없습니다

<UserControl x:Class="MyAssembly.Views.MyPanel" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro" 
     mc:Ignorable="d" 
     d:DesignHeight="600" d:DesignWidth="300"> 
<UserControl.Resources> 
    <ResourceDictionary> 
    <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" /> 

     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 

</UserControl.Resources> 
<Grid> 
    <ScrollViewer Height="90" Width="120" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"> 
     <StackPanel> 
      <TextBlock Text="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor "/> 
      <TextBlock Text="incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud "/> 
      <TextBlock Text="exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure"/> 
      <TextBlock Text="dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. "/> 
      <TextBlock Text="Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit"/> 
      <TextBlock Text="Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit"/> 

     </StackPanel> 
    </ScrollViewer> 
</Grid> 
</UserControl> 

위의 코드가 발생 예외은 같다 (안 모든 것을하지만 충분해야한다) :

Set property 'System.Windows.ResourceDictionary.Source' threw an exception. 
at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader,  IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri) 
at System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri) 
at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream) 
at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator) 

****************************************** 
Cannot locate resource 'styles/colors.xaml'. 
at MS.Internal.AppModel.ResourcePart.GetStreamCore(FileMode mode, FileAccess access) 
at System.IO.Packaging.PackagePart.GetStream(FileMode mode, FileAccess access) 
at System.IO.Packaging.PackWebResponse.CachedResponse.GetResponseStream() 
at System.IO.Packaging.PackWebResponse.GetResponseStream() 
at System.IO.Packaging.PackWebResponse.get_ContentType() 
at MS.Internal.WpfWebRequestHelper.GetContentType(WebResponse response) 
at MS.Internal.WpfWebRequestHelper.GetResponseStream(WebRequest request, ContentType& contentType) 
at System.Windows.ResourceDictionary.set_Source(Uri value) 
at System.Windows.Baml2006.WpfSharedBamlSchemaContext.<Create_BamlProperty_ResourceDictionary_Source>b__1c4(Object target, Object value) 
at System.Windows.Baml2006.WpfKnownMemberInvoker.SetValue(Object instance, Object value) 

답변

0

그것의 소유자를 밝혀 지 프레임 워크는 이전 버전의 mahapps (0.999)를 사용하고 있으며 색상은 co lours, 그들의로드가 먼저로드되기 때문에, 내 충돌. 하나의 컴파일 근무 이전 버전을로드, 나는

0

시도가있는 ResourceDictionary에 XAML URL을 추가 단지 스크롤 "연속성"을 위해 그것을 사용하는 옵트 아웃 해요 :

<ResourceDictionary.MergedDictionaries> 
       <ResourceDictionary Source="../styles/colors.xaml" /> 
       (...) 
    </ResourceDictionary.MergedDictionaries>