0

textbox2 へのデータバインディングは機能するが、textbox1 では機能しない理由を誰かが説明できますか?

BindingSource をデータソースとして使用しますが、クエリを直接使用しても機能しません。

Private Class DTO1
        Public Property id As Integer        
        Public Property value As Nullable(Of Integer)
        Public Property value2 As String
    End Class

    Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
        Dim lst As New List(Of DTO1)
        Dim a As New DTO1
        a.id = 1
        Dim o As Object = 1
        a.value = o
        lst.Add(a)

        a = New DTO1
        a.id = 2
        a.value = Nothing
        lst.Add(a)

        bs.DataSource = (From p In lst Select p).ToList
        grd.DataSource = bs
        TextBox1.DataBindings.Add("text", grd.DataSource, "value")
        TextBox2.DataBindings.Add("text", grd.DataSource, "value2")
    End Sub

textbox1 から移動するたびに、初期値が再度表示されます。_tia rene

編集:これが機能しました。null 許容値を使用する場合は、さらにいくつかのパラメーターを渡す必要があります...

Me.DataBindings.Add(pr_PropertyName, pr_Datasource, pr_Datamember, True, DataSourceUpdateMode.OnValidation, Nothing)

トリックをした

4

1 に答える 1

0

この質問に答えてもらうためだけに...

.DataBindings.Add(pr_PropertyName, pr_Datasource, pr_Datamember, True, DataSourceUpdateMode.OnValidation, Nothing)
于 2012-10-20T05:41:27.300 に答える