2010-08-05 34 views
8

Tôi không thể hiểu tại sao phần đầu tiên của mã không hoạt động, nhưng thứ hai là.WPF DataGrid MouseOver trên DataGridRow

PHẦN 1

<DataGrid.RowStyle> 
     <Style TargetType="DataGridRow"> 
      <Style.Triggers> 
        <Trigger Property="IsMouseOver" 
          Value="True"> 
         <Setter Property="Background" 
           Value="Green" /> 
        </Trigger> 
      </Style.Triggers> 
     </Style> 
    </DataGrid.RowStyle> 

PHẦN 2

<DataGrid.CellStyle> 
     <Style TargetType="DataGridCell"> 
      <Style.Triggers> 
       <Trigger Property="IsMouseOver" 
         Value="True"> 
        <Setter Property="Background" 
          Value="Pink" /> 
       </Trigger> 
      </Style.Triggers> 
     </Style> 
    </DataGrid.CellStyle> 

Về cơ bản, tất cả tôi muốn làm là đặt màu MouseOver trên một hàng ...

Trả lời

10

Dude, tôi sao chép-dán những gì bạn có nó hoạt động hoàn toàn tốt cho tôi. Tôi không chắc bạn đang gặp vấn đề gì. Có gì khác trong XAML của bạn có thể có liên quan không? Ngoài ra, bạn có thể thử thêm <Setter Property="Background" Value="Transparent"/> vào kiểu DataGridRow của bạn và xem nó có sửa lỗi không?

+0

Chết tiệt, trên một DataGrid đơn giản (từ một dự án mới), nó hoạt động. Tôi sẽ đăng DataGrid hoàn chỉnh của mình để hiển thị cho bạn. – esylvestre

+1

Có lỗi của tôi. Tôi đã thiết lập thuộc tính RowBackground trên Datagrid của tôi, ưu tiên trên RowStyle. Tệ của tôi, cảm ơn gợi ý! – esylvestre

Các vấn đề liên quan