Dodanie koloru tła do konkretnego wiersza w WPF DataGrid

0

Mam taki dziwny problem,
Muszę pokolorować konkretny wiersz w DataGrid (najlepiej ten który jest wybrany), myślałem o tym by zrobić to mniej więcej w taki sposób:

            DataGridRow row = (DataGridRow)datagrid.SelectedItem;
            row.Background = Brushes.Yellow;

Jednak nie można zrobić takiego rzutowania, a mi zaczęło brakować pomysłów xd
Z góry dzięki za pomoc

0

Musisz podpiąć event SelectionChanged i wtedy kolorować

        private void gv_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            DataGrid grid = sender as DataGrid;
            DataGridRow row = (DataGridRow)grid.ItemContainerGenerator.ContainerFromItem(grid.SelectedItem);
            row.Background = new SolidColorBrush(Colors.Pink);
        }

Odkolorować sobie już poradzisz ;)

0

Dzięki wielkie pomogło :)

0

Może lepiej w jakimś ondraw. Nie wiem co jest w tym gridzie. I tak trzeba odkolorowac wszystkie inne.
Nie ma tam jakiegoś Appearance?

0

@jacek.placek
Ale on chce kolorowanie zaznaczonego wiersza. Wydaje mi się, że OnDraw koloruje podczas ładowania danych. No chyba, że gv_SelectionChanged odpala OnDraw ale tego już nie wiem ;)

0

A masz rację. Ja bardzo dawno nie używałem standardowych gridów a w WPF to nigdy :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1