Как обнаружить, когда ценность клеток изменилась в Silverlight?
-
26-09-2019 - |
Вопрос
Я работаю в Silverlight, пытаясь выяснить, как установить цвет шрифта для ячейки сетки на основе содержимого ячейки.
У меня есть наблюдательный элемент, связанный с DataGrid, и мои товары внедряют inotifyPropertyChanged, поэтому обновления сетки, так как я изменяю значения; Все работает отлично, в том числе позволить мне сортировать предметы и сохранить сортировку, пока я обновляю основные элементы.
Я знаю, что я могу использовать событие Loodrow, чтобы изменить цвета, но единственным способом, которым я могу получить событие, чтобы пожарить - это изменение источника данных решеток, в этом случае моя сортировка выходит из окна.
Итак, что я действительно хочу, это способ
- петли строки в DataGrid, найдите нужную ячейку, и измените ее цвет или
- Реализуйте пользовательский столбец, который я могу использовать для динамически установки цвета.
Проблема в том, как на самом деле делать Любая из этих вещей :).
Решение
Вы должны использовать привязку данных для этого.
- Связать цвет шрифта вашего элемента клетки до содержания клетки
- Создайте преобразователь Ивалауэконвертер, который преобразует значение для цвета в зависимости от ваших потребностей
Смотрите здесь для хорошего примера
http://weblogs.ass.asp.net/jowrobel/Archive/2009/01/25/Conditional-formatting-in-the-silverlight-datagrid.aspx.