2012-10-16 20 views
0

我有一個ItemsControl,我想根據當前系統主題到它的背景設置爲空客戶端的色彩,不過,我覺得我能做到這一點是這樣的:設置ItemsControl的背景爲SystemColor

<ItemsControl Background="{DynamicResource {x:Static SystemColors.WindowColor}}" /> 

但是當我嘗試這個時,ItemsControl不會顯示,因爲它的背景呈現Transperent,只有將它設置爲本地畫筆才能完成這項工作。
我該如何解決這個問題?

回答

0

Background屬性是Brush類型。此外,您正在使用DynamicResource擴展。所以你必須定義資源鍵,而不是資源本身在你的聲明中:

<ItemsControl Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}" /> 
+0

我也試過,並且它也不起作用。我認爲有一個轉換器,使得它可以使用SystemColors.WindowColor –

+1

看到我的編輯,在你的情況 - 這將是'WindowBrushKey' –

+0

它現在的作品,我想知道它爲什麼沒有拋出任何形式的擴展。 –