2015-06-25 1 views
2

У меня есть приложение VB6, перенесенное на VB.net, и я пытаюсь обновить версию фрейма до версии 4.5, которая жаловалась, что все в Microsoft.VisualBasic . Совместимость dll устарела. Я смог заменить все, кроме FileListBox и DirListBox, довольно легко - утомительно, но мне не нужно было создавать какие-либо новые элементы управления.Замены для DirListBox и/или FileListBox от Microsoft.VisualBasic.Compatibility

Есть ли замена для этих элементов управления? Кто-нибудь знает, были ли они открыты с остальной частью структуры?

ответ

3

Вы можете использовать простой элемент управления ListBox и использовать My.Computer.FileSystem, чтобы сделать их старыми DriveListBox, DirectoryListBox и FileListBox. Вы можете использовать что-то вроде следующего

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    lstDriveList.DataSource = My.Computer.FileSystem.Drives 
End Sub 

Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstDriveList.SelectedIndexChanged 
    lstDirectoryList.DataSource = My.Computer.FileSystem.GetDirectories(lstDriveList.SelectedValue.ToString()) 
End Sub 


Private Sub lstDirectoryList_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstDirectoryList.SelectedIndexChanged 
    lstFileList.DataSource = My.Computer.FileSystem.GetFiles(lstDirectoryList.SelectedValue.ToString()) 
End Sub 

Всех LST просто нормальное ListBoxes вы также можете использовать контроль ListView, аналогичный образ.

+0

Всего ХА, это Безразлично 't введите/введите подкаталоги. –

0

К сожалению, вам придется катиться самостоятельно (точно так же, как @kman отшвырнул вас).

Некоторые альтернативы обсуждались здесь: https://social.msdn.microsoft.com/Forums/en-US/b2d13c9a-e320-4f36-981e-e4c1999d7694/vbnet-equivalent-of-vb6-code-which-are-obsolete?forum=vbinterop

Кто-то предложить вернуться к Framework 3.5 (если вы не используете 4.5 функции), чтобы купить некоторое время, чтобы написать новые элементы управления

Смежные вопросы