2010-08-11 2 views
1

마우스가 해당 행 위에있을 때 특정 행 높이를 두 번 늘리려 고하지만 나머지 행 높이는 변경하면 안됩니다. mmouse가 다른 행 위로 이동하면 해당 행 높이 만 두 배가되어야하고 이전 행 높이가 정상이되어야합니다.마우스가 그 행 위에있을 때 WPF DataGrid의 특정 행 높이를 늘리는 방법

어떻게하는지 알려주세요.

이전에 다음 해결책이있었습니다. 그러나 여기에서 특정 행 위에 마우스를 가져 가면 행 높이가 두 배가되지만 행이 렌더링됩니다. 나는이 개념을 원하지 않는다. 나는 특정 행 높이가 증가 할 때 잔류 열을 밀어 내야한다. 당신이 행을 확장 할 때 형제 요소를 재 배열하게됩니다 대신으로 RenderTransform의 LayoutTransform을 할당

<Style TargetType="{x:Type DataGridRow}"> 
<Style.Triggers> 
    <Trigger Property="IsMouseOver" Value="True"> 
     <Setter Property="RenderTransform"> 
      <Setter.Value> 
       <ScaleTransform ScaleX="1" ScaleY="2" /> 
      </Setter.Value> 
     </Setter> 
     <Setter Property="RenderTransformOrigin" Value="0.5,0.5"/> 
     <Setter Property="Panel.ZIndex" Value="99999"/> 
    </Trigger> 
</Style.Triggers> 

답변

3

. LayoutTransform은 측정 및 정렬 전에 적용되므로 변환 된 크기를 사용하여 요소의 공간을 결정합니다.

+0

안녕하세요, John 님, 답장을 보내 주셔서 감사합니다. 제가 원했던 부분입니다 ...... :-) – ksvimal