2009-04-28 50 views
3

在我的應用程序中,我爲ListBox定義了一個DataTemplate,它是一個具有拉伸邊框的網格,並在其中有一個標籤。 出於某種原因,我已經得到了以下結果:使用WPF ListBox填充問題

alt text http://dl.getdropbox.com/u/829214/q1.gif

正如你所看到的,有項目邊界ListBox邊界之間的填充,並且,這種「填充」標記時,項目被選中。 我應該改變哪些屬性來解決它?

編輯:

肯特的回答讓我意識到,在我的DataTemplate邊框置於項容器(列表框項目)中,而不是取代它,因爲我以爲。最終,我將項目容器樣式中的填充設置爲0,並且解決了我的問題。

回答

2

我看不到圖像,因爲代理問題的,但我認爲你只需要設置容器的背景:

<ListBox> 
    <ListBox.ItemContainerStyle> 
     <Setter Property="Background" Value="White"/> 
    </ListBox.ItemContainerStyle> 
</ListBox> 

如果你想高亮選擇的填充區域以外的顯示,只需在子容器中將Background設置回null即可。

+0

你的回答讓我意識到,我的DataTemplate中的邊框放在項目容器(列表框項)內,並沒有像我想的那樣替換它。最終,我將項目容器樣式中的填充設置爲0,並且解決了我的問題。 – Andy 2009-04-28 12:38:22