테마/템플릿/스타일을 targettype의 모든 컨트롤에 자동으로 적용하는 방법이 있으므로 템플릿 = ...을 지정하지 않아도됩니다. 스타일 = ... 모든 컨트롤에서?Silverlight 2 (RC0)에서 템플릿 (테마) 자동 적용
0
A
답변
2
x : Key 특성을 생략하여이 작업을 수행하는 방법이 있다고 생각했지만 더 이상 작동하지 않는 것 같습니다. 일부 인터넷 검색을 기반으로 그것은 나에게 가장 좋은 방법은 자신의 사용자 지정 스타일을 정의하는 themes/generic.xaml 파일이있는 사용자 지정 컨트롤 라이브러리를 만드는 것입니다. 그런 다음 적절히 스타일이 지정된 고유 요소를 사용할 수 있습니다 (Button 대신 MyButton). 또는 stick with the Style property입니다.
업데이트 :이 here의 정말 좋은 예가 있습니다. (이미 알았을 것 같습니다. :)
0
Einarl : Silverlight 2 코어에서 컨트롤 템플릿/스타일을 "계단식으로 배열"할 수있는 방법이 없습니다. 즉, TextBox의 스타일/컨트롤 템플릿을 설정할 수 없으며 모든 TextBox가이를 가져올 것으로 기대합니다. 그것은 확실히 팀이 미래 버전을 위해 찾고있는 것입니다.
1
모든 컨트롤의 테마를 설정하려면 Startup 이벤트를 만들고 Startup 이벤트 처리기에서 테마를 설정하십시오. 해당 테마는 해당 솔루션의 모든 사용자 컨트롤에 적용됩니다.
//App.xaml
<Application x:Uid="Application_1" x:Class="SampleApp.Home.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml"
Startup="Application_Startup">
//App.xaml.cs
private void Application_Startup(object sender, StartupEventArgs e)
{
StyleManager.ApplicationTheme = new MetroTheme(); //Set your theme here
}