У меня есть пользовательский класс элемента (в основном два строковых значения с соответствующими свойствами), как показано ниже:VB.NET с помощью LINQ транспонировать ObservableCollection
Public Class itmDataDetails
Private _strDataName As String
Private _strDataValue As String
Public Property strDataName() As String
Get
Return _strDataName
End Get
Set(ByVal value As String)
_strDataName = value
End Set
End Property
Public Property strDataValue() As String
Get
Return _strDataValue
End Get
Set(ByVal value As String)
_strDataValue = value
End Set
End Property
Public Sub New(Optional ByVal strDataNameIn As String = "", Optional ByVal strDataValueIn As String = "")
strDataName = strDataNameIn
strDataValue = strDataValueIn
End Sub
и класс ObservableCollection обертка вокруг этого. Я хотел бы перенести этот ObservableCollection (то есть сделать имена данных в столбцы и связанные с ними значения в строки) для отображения в WPF ListView.
Вот что я до сих пор:
Private Sub Transpose()
Dim colGroupedValues = From x In MyBase.Items Group x By Key = x.strDataName Into Group Select strName = Key, colValues = Group
MyBase.Clear()
For Each x In colGroupedValues
MyBase.Add(x)
Next
End Sub
Естественно, это не работает, как й не может быть добавлен в ObservableCollection (Of itmDataDetails). Любые предложения о том, как это сделать? Я не очень хорошо знаю LINQ, поэтому я не удивлюсь, увидев, что я делаю это неправильно.
Заранее благодарю всех.
Не следует ли это обрабатывать в WPF вместо вашего бэкэнда? –
Если вы знаете, как это сделать, пожалуйста, расскажите. – Riddari