好的,我在.NET中遇到数据绑定问题 一些背景信息,我的业务对象层使用的是CSLA v1.0 _clientObj作为参数传入,作为继承CSLA.BusinessBase的业务对象
以下是代码段:
Dim nextClient As New ComboBox With { _
.Name = "txtClientAtt" & (ClientBoxes.Count + 1).ToString(), _
.DisplayMember = "FullNameAndID", .ValueMember = "ClientID", _
.Tag = _clientObj}
nextClient.DataSource = ClientList.GetClientList(SelectedSite)
nextClient.DataBindings.Add("SelectedValue", _clientObj, "ClientID")
If Not _clientObj.ClientID = Nothing AndAlso nextClient.SelectedValue Is Nothing Then
Debug.Print("How could I ever be inside this conditional????")
End If
如果_clientObj是具有指定ID值的预先存在的对象,则确实达到了该调试语句。怎么可能?我假设如果DataSource对象具有初始值,添加数据绑定应立即设置ComboBox的.SelectedValue属性。
答案 0 :(得分:0)
If Not _clientObj.ClientID = Nothing
不是测试空值的正确方法。你应该使用:
If Not _clientObj.ClientID Is Nothing
但是,我不确定这实际上是否是您遇到的问题。