Как создать шаблон данных diff для каждой ячейки столбца данных, чтобы он мог проверять бизнес-логику и предоставлять шаблоны данных diff - PullRequest
1 голос
/ 09 августа 2011

Мое требование: я должен сравнить значение в ячейке данных сетки данных и хочу, чтобы рядом с ней отображалась стрелка (вверх зеленый, вниз красный, ровный оранжевый) на основе некоторой бизнес-логики.

Я новичок в Silverlight MVVM. Могу ли я сделать это с помощью столбца шаблона данных? Если так, как я могу иметь каждое значение ячейки по сравнению с бизнес-логикой

Кто-нибудь может мне помочь? Это было бы очень полезно.

1 Ответ

0 голосов
/ 09 августа 2011

Шаблон данных для вашей ячейки может иметь все возможные элементы управления, которые вы хотите отобразить (стрелка вверх, стрелка вниз, равно), и вы можете связать видимость каждого элемента управления с некоторым свойством, которое можно использовать для определения того, какой один для отображения.

Создайте ValueConverter для использования в привязке, который получит значение (переданное из привязки) вместе с ConverterParameter. Тогда конвертер может вернуть соответствующую видимость.

Это не самое чистое решение в мире, но оно работает.

ИМО, самое чистое решение - использовать какой-то элемент управления DataTemplateSelector (см. http://www.codeproject.com/KB/silverlight/SLTemplateSelector.aspx)

...