Как использовать ObjectListView для отображения всех изображений в списке изображений? На домашнем сайте ObjectListView они показали, как это сделать на С# (я не очень хорошо разбираюсь в С# и делегатах). Но я не могу заставить его работать в VB.net.
Как использовать ObjectListView для отображения всех изображений в списке изображений?
Ответы (1)
Вот прямой перевод их примера:
Me.mainColumn.ImageGetter = Function(row As Object) Do
Dim key As String = Me.GetImageKey(row)
If Not Me.listView.LargeImageList.Images.ContainsKey(key) Then
Dim smallImage As Image = Me.GetSmallImageFromStorage(key)
Dim largeImage As Image = Me.GetLargeImageFromStorage(key)
Me.listView.SmallImageList.Images.Add(key, smallImage)
Me.listView.LargeImageList.Images.Add(key, largeImage)
End If
Return key
End Function
Это будет работать только с самой последней версией VB.NET, поскольку она использует встроенную функцию. Вы можете изменить его следующим образом для более старых версий:
Создайте функцию, похожую на:
Public Function GetImageFromList(row As Object) As String
Dim key As String = Me.GetImageKey(row)
If Not Me.listView.LargeImageList.Images.ContainsKey(key) Then
Dim smallImage As Image = Me.GetSmallImageFromStorage(key)
Dim largeImage As Image = Me.GetLargeImageFromStorage(key)
Me.listView.SmallImageList.Images.Add(key, smallImage)
Me.listView.LargeImageList.Images.Add(key, largeImage)
End If
Return key
End Function
А затем установите геттер изображения для столбца, например:
Me.mainColumn.ImageGetter = AddressOf GetImageFromList
person
Jay
schedule
29.12.2011
Что это за геттер изображений? Это элемент управления в vb.net? Будет ли это работать в VS2010?
- person Failed_Noob; 29.12.2011
ImageGetter — это свойство делегата в столбце. Вам нужно написать методы для получения изображений из вашего списка изображений по ключу. Это были просто примеры, которые они предоставили
- person Jay; 29.12.2011