Posted 30 May 2018, 5:28 pm EST
Hi,
Try to implement the Window’s Loaded and C1DataGrid’s LoadedRowPresenter and UnloadedRowPresenter events as below:
Brush outBrush = Brushes.Transparent;
Brush inBrush = Brushes.Transparent;
private void Window_Loaded(object sender, RoutedEventArgs e)
{
inBrush = grid.MouseOverBrush.Clone();
grid.MouseOverBrush = Brushes.Transparent;
}
private void grid_LoadedRowPresenter(object sender, C1.WPF.DataGrid.DataGridRowEventArgs e)
{
if (e.Row.Presenter != null && (!(e.Row.Presenter is DataGridNewRowPresenter)))
{
e.Row.Presenter.MouseEnter += Presenter_MouseEnter;
e.Row.Presenter.MouseLeave += Presenter_MouseLeave;
}
}
private void Presenter_MouseEnter(object sender, MouseEventArgs e)
{
outBrush = (sender as DataGridRowPresenter).Background;
(sender as DataGridRowPresenter).Background = inBrush;
}
private void Presenter_MouseLeave(object sender, MouseEventArgs e)
{
(sender as DataGridRowPresenter).Background = outBrush;
}
private void grid_UnloadedRowPresenter(object sender, C1.WPF.DataGrid.DataGridRowEventArgs e)
{
if (e.Row.Presenter != null && (!(e.Row.Presenter is DataGridNewRowPresenter)))
{
e.Row.Presenter.Background = outBrush;
e.Row.Presenter.MouseEnter -= Presenter_MouseEnter;
e.Row.Presenter.MouseLeave -= Presenter_MouseLeave;
}
}
Hope, this will solve your issue.
Thanks,
Singh