Прохождение предметов DataRepeater
-
12-10-2019 - |
Вопрос
Есть ли способ пройти через элементы DatarePeater через код, когда мы запускаем цикл и перемещаем элементы в списке / комбо -поле? Спасибо, Фуркан
Решение
Это должно работать:
For i As Integer = 0 To Me.DataRepeater1.ItemCount -1
Me.DataRepeater1.CurrentItemIndex = i
Dim item As DataRepeaterItem = Me.DataRepeater1.CurrentItem
Next
Другие советы
Код из Schmelter изменяет текущую строку, но это может дать нежелательные эффекты, поскольку он может обновить пользовательский интерфейс и привести к стрельбе в другие события обработки данных. Нет необходимости менять текущий сайт, чтобы пройти через DataReEpeaterItems. Каждый DataReEpeaterItem - это просто объект управления в коллекции DataRePeater.Controls. Вот альтернатива (в C#):
using Microsoft.VisualBasic.PowerPacks;
foreach ( DataRepeaterItem rowItem in dataRepeater1.Controls )
{
int itemIndex = rowItem.ItemIndex;
// If it's bound, get the underlying data object
object dataItem = BindingSource1.List[itemIndex];
// Add code for each rowItem of the dataItem
// All controls on the DataRepeateItem can be obtained from rowItem.Controls
}
Не связан с StackOverflow