Проверка в ListBox на совпадение элементов - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Для проверки элементов на совпадение (в данном случае номеров скважин) использую ListBox.Itesm.Contains. Сам ListBox расположен на одной форме (frmMain), а поле добавления элемента (номера скважины) - на другой (frmWellAdd). Ниже представлен код:
Листинг программы
  1. If frmMain.LBox_Wells.Items.Contains(Me.TB_WellName_New.Text) = False Then
  2. frmMain.ToolStripStatus_Well.Text = "Скважина: " & Me.TB_WellName_New.Text
  3. frmWellsParam.StatusLbl_WellName.Text = "Скважина: " & Me.TB_WellName_New.Text
  4. frmWellsParam.ShowDialog(frmMain)
  5. Me.Close()
  6. ElseIf frmMain.LBox_Wells.Items.Contains(Me.TB_WellName_New.Text) = True Then
  7. Dim MsgWellRepeat As Integer = MsgBox("Скважина с таким именем уже существует!" & vbCrLf & _
  8. "Редактировать данные по скважине?", MsgBoxStyle.DefaultButton2 + MsgBoxStyle.Question + _
  9. MessageBoxButtons.YesNo, frmMain.AppName)
  10. If MsgWellRepeat = MsgBoxResult.Yes Then
  11. frmWellsParam_Clone.StatusLbl_WellName.Text = "Скважина: " & Me.TB_WellName_New.Text
  12. frmWellsParam_Clone.ShowDialog(frmMain)
  13. Me.Close()
  14. ElseIf MsgWellRepeat = MsgBoxResult.No Then
  15. Me.Close()
  16. End If
  17. End If
Проблема в том, что при добавлении нового элемента (скважины) не срабатывает тот самый ListBox.Itesm.Contains... Хотя, если добавить новый элемент (новую скважину), то она добавляется в список ListBox'а и при повторном добавлении элемента с аналогичным названием всё срабатывает как надо. А вот после закрытия приложения и повторного запуска, добавления элемента (скважины) - опять такая же история - не видит элементы (номера скважин) и в итоге в ListBox'е два одинаковых элемента... Может проблема заключается в том, что не видит уже ранее добавленные элементы (первый элемент "14" ранее добавленный, а второй элемент (скважина) "14" после повторного открытия приложения и добавления элемента...)???

Решение задачи: «Проверка в ListBox на совпадение элементов»

textual
Листинг программы
  1.  Dim strpath As String = "Ваша директория с подкаталогами"
  2.         If Directory.Exists(strpath) Then
  3.             Dim dirInfo As New DirectoryInfo(strpath)
  4.             Dim dir() As FileSystemInfo = dirInfo.GetDirectories
  5.             For a As Long = 0 To dir.Length
  6.                 If dir(a).Name <> "Искомая директория" Then
  7.                     'Ваш код добавления
  8.                 Else
  9.                     'Ваш код
  10.                 End If
  11.             Next
  12.         End If
  13.  
  14.     End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы