小编use*_*101的帖子

将转换后的Enum绑定到ComboBox

我试图将以下枚举绑定到ComboBox

Public Enum PossibleActions
  ActionRead
  ActionWrite
  ActionVerify
End Enum
Run Code Online (Sandbox Code Playgroud)

我不能改变Enum本身,但我不想显示这些字符串.我的目的只是剪切前缀'Action'并在ComboBox中显示'Read','Write'和'Verify'.因此我写了一个ValueConverter

Public Class PossibleActionsConverter
  Implements IValueConverter

      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 actions() As PossibleActions
        Dim strings() As String

        actions = CType(value, PossibleActions())
        ReDim strings(actions.GetUpperBound(0))
        For i = 0 To actions.GetUpperBound(0)
          strings(i) = actions(i).ToString.Substring(6)
        Next
        Return strings
      End Function

      Public Function ConvertBack(ByVal value As Object, ByVal targetType As System.Type, ByVal parameter As Object, ByVal …
Run Code Online (Sandbox Code Playgroud)

vb.net wpf binding ivalueconverter

6
推荐指数
1
解决办法
1669
查看次数

标签 统计

binding ×1

ivalueconverter ×1

vb.net ×1

wpf ×1