Anuragintit Ответов: 1

Как изменить цвет строк, когда значение следующей строки совпадает с предыдущим значением в repeater in ASP.NET


мне нужно раскрасить мой ряд ретранслятора, когда есть такое условие ниже

у меня есть столбец с именем FamilyID, когда идентификатор семьи одинаков для нижеприведенной строки, тогда мне нужно изменить цвет, иначе измените другой цвет.
например
familyid

1 это тот же идентификатор так что любой цвет

1 это тот же идентификатор так что предыдущий цвет

1 это тот же идентификатор так что предыдущий цвет

2 не тот же идентификатор по сравнению с приведенным выше ---любой следующий цвет, но не его предыдущий

2 это тот же идентификатор так что предыдущий цвет

3 не тот же идентификатор по сравнению с приведенным выше ---любой следующий цвет, но не его предыдущий

4 -не тот же идентификатор по сравнению с приведенным выше ---любой следующий цвет, но не его предыдущий

Что я уже пробовал:

Не знаю, как достичь или с чего начать.

1 Ответов

Рейтинг:
1

ZurdoDev

Вам нужно посмотреть на различные события ретранслятора. Один из них, который может сработать, - это событие ItemCreated, Ретранслятор.ItemCreated Event (System.Web.UI.WebControls) | Microsoft Docs[^] или, возможно, событие ItemDataBound, Ретранслятор.Событие ItemDataBound (System.Web.UI.WebControls) | Microsoft Docs[^]

Однако если вы пытаетесь сравнить его с тем, что находится ниже, то тот, что находится ниже, не будет существовать, когда эти события срабатывают, поэтому вам, возможно, придется перебирать все элементы во время одного из событий страницы, возможно, LoadComplete или PreRender, Понимание порядка следования ASP.NET события страницы[^]

Другой вариант-сравнить в SQL и вернуть флаг, который можно использовать в событии ItemDataBound.


Anuragintit

Спасибо, но я решил это с помощью цикла, взяв сначала 0 и compre в первую строку, затем назначив строку значения, а затем второе сравнение возвращает true из false.... и так далее..