Я должен отформатировать строку («00: 10: 08: 10») в (10 недель 08 дней 10 часов). Поэтому я использовал конвертер и добавил его с привязкой к сетке данных. Мой код:
Public Function Convert(ByVal value As Object, ByVal targetType As System.Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.Convert
Dim strList(4) As String
Dim prefixList() As String = {"Wk", "Dy", "Hrs", "Min"}
Dim input As String = value.ToString
Dim Output As String = String.Empty
If input <> String.Empty Then
strList = input.Split(":")
Dim itr As Integer
For Each Str As String In strList
If Integer.Parse(Str) <> 0 Then
Output += Str + " " + prefixList(itr) + " "
End If
itr += 1
Next
End If
Return Output
End Function
Я получаю его преобразованным, но когда я редактирую данные, конвертер вызывается снова, где у меня не будет старого формата («00: 10: 08: 10»), а вместо него (10 Dy 08 Hr 10 Min ). поэтому конвертер не работает, очевидно. Как я могу заставить это работать?
Дополнительно: И есть ли тип данных в mssql для представления моих данных в днях и часах, чтобы мне не приходилось использовать этот формат строки.