0
저는 WPF 및 XAML을 처음 사용합니다. 나는 codebehind를 사용하여 다음과 같은 해결책을 가지고있다. 그러나 XAML에서보다 쉽게 지정해야하는 것으로 생각됩니다.XAML에서 다른 어셈블리의 아이콘 지정
Icon을 다른 어셈블리의 리소스에 설정하려고합니다 (특히 System.Activities.Presentation의 "FlowDecisionIcon"). 코드 숨김에서 생성자에 추가 할 때 다음 코드는 작동합니다
InitializeComponent(); // This was already there
ResourceDictionary dict = new ResourceDictionary { Source = new Uri("pack://application:,,,/System.Activities.Presentation;V4.0.0.0;31bf3856ad364e35;component/themes/icons.xaml") };
this.Resources.MergedDictionaries.Add(dict);
Icon = this.Resources["FlowDecisionIcon"] as DrawingBrush;
나는 나 같은으로 XAML 속에서 이것을 지정할 수있는 좋은 방법이 될 것입니다 거기 기대했다
:
<Window xmlns:sap="clr-namespace:System.Activities.Presentation;assembly=System.Activities.Presentation"
Icon="sap:FlowDecisionIcon"> ...
또는 Visual Studio의 속성 패널에서 Icon 속성을 지정하면됩니다. 하지만 구문을 알아 내는데 실패했습니다.
System.Windows.Controls.Control에서 파생되는 컨트롤입니다. ""를 부모 컨트롤로 바꾸 었는데 그 부분이 작동하는 것 같습니다. 하지만 첫 번째 줄에는 VS에서 "{DynamicResource FlowDecisionIcon}"에 대한 파란색 밑줄이 있습니다. '리소스 "FlowDecisionIcon"을 (를) 확인할 수 없습니다. " –
일반적으로 Visual Studio에 리소스를 찾는 데 문제가 있습니다. 실행하면 아이콘이 표시됩니까? 그렇지 않다면,'DynamicRsource' 대신에'StaticResource'를 사용하십시오. - 자원을 찾을 수 없다는 예외를 던지면 자원을 로딩하는 것이 잘못되었습니다. 여기에 소식을 게시하면 아마도 도움이 될 것입니다. – XAMeLi