2011-01-17 3 views

ответ

4

Это должно работать:

For i As Integer = 0 To Me.DataRepeater1.ItemCount -1 
     Me.DataRepeater1.CurrentItemIndex = i 
     Dim item As DataRepeaterItem = Me.DataRepeater1.CurrentItem 
    Next 
5

Код из Schmelter изменяет текущую строку, но это может привести к нежелательным эффектам, поскольку он может обновить пользовательский интерфейс и вызывает другие события данных обработки в огнь. Нет необходимости менять CurrentItemIndex на цикл через DataRepeaterItems. Каждый DataRepeaterItem является всего лишь объектом Control в коллекции 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 
    } 

 Смежные вопросы

  • Нет связанных вопросов^_^