带有撇号的字符串在绑定到属性时会加倍

时间:2018-01-26 17:57:08

标签: wpf vb.net radgridview

我有一个radgridview,其中一个单元格的数据可能包含撇号。选择行后,行上下文将强制转换为公共属性的集合。除了带撇号的单元格外,这种方法效果很好。

    Private Sub dgSelectOrder_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs)

    Dim row = TryCast(sender, GridViewRow)
    Dim selectedOrder = TryCast(row.DataContext, myProperties)

如果单元格数据有撇号,例如LET' S GO,则该属性返回值LET' S GO。撇号增加了一倍。如果该数据被保存回数据库,然后再次检索,该财产将返回LET'''' S GO。

如何正确投射行数据?

Public Class myProperties

    Public Property pProjectNbr As String = String.Empty

感谢。

1 个答案:

答案 0 :(得分:0)

我不应该这样做,但它是唯一可行的方式。我有类似的代码将row.datacontext转换为其他地方。并且该代码按照撇号的预期运行。

    Private Sub dgArchivedOrders_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs)

        Dim row = TryCast(sender, GridViewRow)
        Dim selectedOrder = TryCast(row.DataContext, myProperties)

        If selectedOrder.pProjectNbr.Contains("''") Then
            Dim convertThis As String = selectedOrder.pProjectNbr
            selectedOrder.pProjectNbr = convertThis.Replace("''", "'")
        End If