2014-03-19 3 views
1

ListView의 ListViewItem을 분리해야합니다. 나는 그것을 위해 다음 XAML을 썼다 :ListViewItem 사이에 줄을 추가하는 방법

<Window.Resources> 
    <Style x:Key="myTemplate" TargetType="ListViewItem"> 
     <Setter Property="BorderThickness" Value="0,4,0,0"/> 
     <Setter Property="BorderBrush" Value="Red"/> 
    </Style> 


</Window.Resources> 

가 지금은 다음 방법으로이 자원을 이용할 수있다 :

<Grid> 
     <ListView Name="listview1" HorizontalAlignment="Left" Height="164" Margin="191,83,0,0" VerticalAlignment="Top" Width="307" ItemContainerStyle="{StaticResource myTemplate}" BorderThickness="5"> 

      <ListView.View> 
       <GridView> 
        <GridViewColumn> 
        </GridViewColumn> 
       </GridView> 
      </ListView.View> 

      <!--this data is only for sample. Really it's load by binding--> 
       <ListViewItem Content="1"/> 

       <ListViewItem Content="2"/> 

       <ListViewItem Content="3"/> 
     </ListView> 

예, 잘 작동 everythink하지만 첫 번째 요소에이 스타일을 적용하지 않으 (나는 첫 번째 요소에 대한 경계선을보고 싶지 않다.)

<Window.Resources> 
    <Style x:Key="myTemplate" TargetType="ListViewItem">       
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="ListBoxItem"> 
        <StackPanel> 
         <Separator x:Name="Separator"/> 
         <ContentPresenter/> 
        </StackPanel> 
        <ControlTemplate.Triggers> 
         <DataTrigger Binding="{Binding RelativeSource={RelativeSource PreviousData}}" Value="{x:Null}"> 
          <Setter Property="Visibility" TargetName="Separator" Value="Collapsed"/> 
         </DataTrigger> 
        </ControlTemplate.Triggers> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 


</Window.Resources> 

방법 필요한 뷰를 실현하기 위해 : 나는 실현에 필요한 뷰에 대한 다음의 방법을 사용하는 경우가 선택이되면 , 항목이 강조 표시되지 않습니다?

+0

체크 [ON이 질문 SO] (http://stackoverflow.com/questions/2511227/how-can-a-separator-be-added-between-items-in-itemscontrol) – gehho

답변

0

불과 2 개 스타일 (세퍼레이터)없이 제 스타일을 만들 제 소자에만인가되고, ((하나) 세퍼레이터 제 스타일의 모든 나머지 구성 요소에 적용된다.

+0

고맙습니다 만, 어떻게 만드나요? – Mixim

관련 문제