簡體   English   中英

為什么我的變量不設置為對象的實例?

[英]Why won't my variable set to an instance of an object?

該程序是度假租賃公司的預訂系統(除其他外)。 我正在屏幕上工作,您可以在其中查看屬性並對其進行修改或添加更多(等)

好的,所以在其他情況下也能正常工作,但是這只是不想接受...我希望這有點愚蠢。 基本上,在整個程序的初始加載中,我用相關信息填充了數據表,然后在需要時訪問它們,在這種情況下,我在表單屬性中,想要訪問預訂(在FrmBookings中進行),以查看何時該酒店接下來被預訂以接待客人。

Dim Intcounter As Integer = 0
Dim NumberBookingRecords As Integer = BookingsNumRecs

Dim PropertyName As String
Dim PropertyFromBookings As String


Do

    PropertyName = DTProperties(Intcounter)("Property Name").ToString
    PropertyFromBookings = (DTBookings(NumberBookingRecords)("Property").ToString)

    If PropertyName = PropertyFromBookings Then

        lblDateOfArrival.Text = (DTBookings(NumberBookingRecords)("Arrival").ToString)
        Intcounter = Intcounter + 1

    Else

        If Not NumberBookingRecords = 0 Then

            NumberBookingRecords = NumberBookingRecords - 1

        Else

        End If

    End If


Loop Until Intcounter >= intNumPropertyRecs

但是,當我進入PropertyFromBookings = (DTBookings(NumberBookingRecords)("Property").ToString)它告訴我無法將其設置為對象的實例...無論我嘗試從DTBookings訪問什么,我都會得到同樣的反應。

這是程序打開時的初始加載形式

Dim FSBookings As New FileStream(strFileNameBookings, FileMode.OpenOrCreate, FileAccess.Read)

Application.DoEvents()

If FileLen(strFileNameBookings) > 0 Then
    DTBookings.ReadXmlSchema(strFileNameBookings)
    DTBookings.ReadXml(strFileNameBookings)
    BookingsNumRecs = DTBookings.Rows.Count
    intCurrRec = 1
Else
End If

FSBookings.Close()
blnStopAuto = True
blnStopAuto = False

根據您的代碼示例, DTBookings()是一個函數調用。 這里有兩個可能性。 要么:

  1. 該函數的結果為Nothing ,並且當您嘗試使用Nothing好像那里有一個實際對象時(在這種情況下,當您嘗試查找("Property")索引器時),您將得到該異常,要么 ...
  2. (“ Property”)索引的結果返回Nothing,在這種情況下,當您嘗試調用.ToString()方法時,將得到該異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM