Saya tiba-tiba mendapatkan kesalahan di Visual Studio/VB di mana system.windows.forms.control menimpa modul microsoft.vb.strings, sehingga kode yang kemarin baik-baik saja sekarang menimbulkan kesalahan.

Kucing redup sebagai string = "kawanan kucing"

Irisan redup sebagai string = Kiri (kucing, 4)

Melempar kesalahan di Kiri, "Properti Kelebihan Beban Publik Ditinggalkan Sebagai Integer' tidak memiliki parameter dan tipe pengembaliannya tidak dapat diindeks."

Sementara,

Kucing redup sebagai string = "kawanan kucing"

Irisan redup sebagai string=strings.Left(cat,4)

Baik-baik saja. Saya berasumsi itu sedang kelebihan beban oleh properti system.windows.forms.control.left untuk beberapa alasan dan saya tidak tahu bagaimana memperbaikinya atau mengapa itu terjadi. Saya sepenuhnya menghapus dan menginstal ulang Visual Studio, menginstal ulang .net framework untuk mencoba dan memperbaiki masalah tetapi masih ada di program kosong baru. Ada saran?

0
Graphenes 22 Maret 2019, 14:28

1 menjawab

Jawaban Terbaik

Left ambigu; itu ada di dalam kelas String dan kelas Formulir & karena kodenya (mungkin) di dalam Formulir maka Left "paling lokal" menang.

Left itu sendiri adalah peninggalan dari VB6 & Anda seharusnya tidak benar-benar menggunakannya (perilaku yang Anda lihat adalah didokumentasikan dalam komentar).

Beralih ke:

dim slice as string = cat.Substring(0, 4)
0
Alex K. 22 Maret 2019, 11:48