2013-02-04 25 views
6

Tôi đang cố gắng thêm tham chiếu đến thư viện tài nguyên được xác định trong dự án khác (ví dụ: Elysium) và sử dụng nó trong cụm từ biểu thức.Làm cách nào để thêm tham chiếu vào từ điển tài nguyên bên ngoài được xác định trong chủ đề thư viện bên thứ ba

Đây là cách tôi hợp nhất từ ​​điển tài nguyên trong tệp App.Xaml của mình.

<Application.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/MahApps.Metro.Resources;component/Icons.xaml" /> 
      <ResourceDictionary Source="pack://application:,,,/Telerik.Windows.Themes.Metro;component/Themes/System.Windows.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</Application.Resources> 

Nhưng tôi dường như không nhận được bất kỳ tài nguyên nào được xác định trong các thư viện đó tại Expression Blend 4. Có ý tưởng nào không?

enter image description here

+0

Bạn đã bao giờ tìm thấy giải pháp cho điều này chưa? Tôi đang phải đối mặt với chính xác cùng một vấn đề –

+0

@DeanChalk có, tôi đã đăng giải pháp của tôi bên dưới nhưng không được phép đánh dấu câu trả lời của tôi là giải pháp. Vui lòng thử và đánh dấu là câu trả lời nếu bạn thấy nó hữu ích. cảm ơn. –

Trả lời

4

Tìm thấy câu trả lời của tôi trên Expression Blend Diễn đàn: "(. Điều hướng đến từ điển Resource bên ngoài, chọn nó và nhấn ok) Dự án> Link To hiện có Item> Rebuild." http://social.msdn.microsoft.com/Forums/en/blend/thread/21bdc8a1-4a58-49f9-ae4d-c736b8fd673a

+2

Điều gì xảy ra nếu tài nguyên bên ngoài nằm trong dll? Tôi cũng đang sử dụng MahApps.Metro trong ứng dụng của mình và tôi muốn có thể tham khảo tài nguyên (chủ yếu là cọ vẽ) từ các chủ đề trong quan điểm của tôi bằng cách sử dụng Blend để khám phá chúng cho tôi. –

+0

Tôi chỉ làm điều này và có một bước bổ sung cần thiết.Sau khi liên kết và xây dựng lại, hãy làm theo hướng dẫn của Sorskoot bên dưới để liên kết chế độ xem hoặc điều khiển trong dự án thứ hai của bạn với các từ điển bạn vừa liên kết với dự án. Chỉ khi đó bạn mới có thể chọn tài nguyên được chia sẻ dưới dạng "Tài nguyên cục bộ" trong trình đơn tùy chọn nâng cao của các đối tượng của bạn. – arwenvh

1

Tôi nghĩ thuộc tính Nguồn được đặt không chính xác.

<Window.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary 
        Source="/WpfControlLibrary1;component/BrushesInAssembly.xaml"/> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</Window.Resources> 
<Grid x:Name="LayoutRoot" Background="{DynamicResource RedBrush}"/> 

Những gì tôi đã làm đến này:

Là một mẫu tôi đã tạo một dự án WPF mới trong Blend và thêm một thư viện kiểm soát. Tôi đã tham khảo hội nghị từ dự án chính.

Tôi đã thêm từ điển tài nguyên bằng một cọ vẽ, RedBrush.

project

Tôi đã đi đến MainWindow.xaml và mở Bảng điều khiển tài nguyên. Ở đó tôi liên kết từ điển.

resource pane

Sau khi liên kết xuất hiện trong danh sách tài nguyên.

RedBrush

+0

Tôi đã thử những gì bạn đề xuất trên một thư viện bên ngoài (thư viện dự án nằm trong không gian tên khác nhau, giống như điều khiển người dùng bên thứ 3). Tôi không thể xem tệp được liệt kê như trong ví dụ của bạn. –

+0

Điều này đã giúp tôi làm cho nó được sắp xếp, cảm ơn! – Marc

0

Hy vọng bạn đã tìm được giải pháp, nhưng nếu không, tôi sử dụng this link here làm tham chiếu không đổi. Nó làm như sau: cho thấy cách liên kết ResourceLibraries trong các dự án tài nguyên bên ngoài, cách đặt tên kiểu và sắp xếp chúng để bất kỳ ai trong nhóm biết điều gì đang diễn ra, v.v. Thật đơn giản, tuyệt vời.

Hy vọng nó sẽ giúp ai đó.

Các vấn đề liên quan