Search code examples
wpfdatagridmouseoverdatagridrowheader

WPF DataGrid RowHeader MouseEnter MouseEventHandler


I have datagrid and it's loaded event I would like to create event handler for Mouse Enter and Mouse Leave.

I was able to do it for Datagrid Column header but I dont know how to do it for Row.

Here is code:

    for (int i = 0; i < grid.Columns.Count; i++)
        {
            DataGridColumnHeader columnHeader = DataGridHelper.GetColumnHeader(this, i);
            if (columnHeader != null)
            {
                columnHeader.MouseEnter += new MouseEventHandler(ColumnHeader_MouseEnter);
                columnHeader.MouseLeave += new MouseEventHandler(ColumnHeader_MouseLeave);
            }
        }

Pls Help me. Thanks Dee


Solution

  • I would use a Style

    <Style TargetType="{x:Type DataGridRowHeader}">
      <EventSetter Event="MouseEnter" Handler="MyMouseEnterHandler"/>
      <EventSetter Event="MouseLeave" Handler="MyMouseLeaveHandler"/>
    </Style>
    

    You should be able to do the same for the column headers and get rid of the code behind.