2009-08-06 63 views
1

我知道這一定是明顯的,但我開始用WPF和我堅持:頭沒有出現在WPF的ListView

我有以下ListView控件(主網的頁面上的第二行中) ,內容正在顯示,但標題不是!

<ListView Grid.Row="1" Name="container" ItemsSource="{Binding MyCollection}" > 
    <ListView.View> 
     <GridView> 
     <GridViewColumn Width="50" Header="A" DisplayMemberBinding="{Binding A}"/> 
     <GridViewColumn Width="50" Header="B" DisplayMemberBinding="{Binding B}"/> 
     <GridViewColumn Width="50" Header="C" DisplayMemberBinding="{Binding C}"/>    
     </GridView> 
    </ListView.View> 
</ListView> 

任何幫助表示讚賞!

編輯

感謝羅埃爾我能找到在ResourceDictionary中的樣式casuing這個問題:

<Style TargetType="{x:Type ListView}" BasedOn="{StaticResource {x:Type ListBox}}"> 
    <Setter Property="BorderBrush" Value="Black"/> 
    <Setter Property="BorderThickness" Value="0"/> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate> 
       <ScrollViewer Margin="{TemplateBinding Padding}" VerticalScrollBarVisibility="Visible"> 
        <WrapPanel IsItemsHost="True" MinWidth="100" Width="{Binding ActualWidth,RelativeSource={RelativeSource AncestorType=ScrollContentPresenter}}"> 
        </WrapPanel> 
       </ScrollViewer> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

我怎樣才能保持這種風格對項目的其餘部分不應用它到這個特定的listView?

+0

嘗試手動設置行的高度以檢查ListView的頂部是否剛被隱藏。 – Noldorin 2009-08-06 11:15:27

+1

這個位似乎沒有什麼問題,XamlPadX顯示了帶有標題的列表視圖。有沒有定義覆蓋樣式的資源? – RoelF 2009-08-06 11:16:05

+0

看編輯,你是對的資源!謝謝 – JohnIdol 2009-08-06 11:24:48

回答

4

您可以覆蓋僅用於該列表視圖的樣式。這可能是最簡單的方法:

<ListView Grid.Row="1" Name="container" ItemsSource="{Binding MyCollection}" > 
<ListView.Style> 
    <Style TargetType="{x:Type ListView}"/> 
</ListView.Style> 

<ListView.View> 
     <GridView> 
     <GridViewColumn Width="50" Header="A" DisplayMemberBinding="{Binding A}"/> 
     <GridViewColumn Width="50" Header="B" DisplayMemberBinding="{Binding B}"/> 
     <GridViewColumn Width="50" Header="C" DisplayMemberBinding="{Binding C}"/>    
     </GridView> 
    </ListView.View> 
</ListView> 

希望這有助於!

+0

感謝您的幫助!現在我試圖設置頭的樣式...我可能會發布另一個問題:) – JohnIdol 2009-08-06 12:19:04

+2

我可以節省您的麻煩: 在GridView上定義ColumnHeaderTemplate(而不是ListView.GridView!);-) – RoelF 2009-08-06 12:27:13

+0

感謝您指出我在正確的方向! – JohnIdol 2009-08-06 14:57:57