Как разместить временный combobox или текстовое поле в listview?
Я использовал программу под названием personal ancestry file, и мне понравилась их настройка для добавления или обновления информации. У них был один столбец (1-й) с именем столбцы базы данных (полное имя, данные о рождении, дате смерти и т. д.), Затем второй столбец был там, где вы вводили информацию, например,
column 1 column 2 Full name: Smith, Steve Date of birth: 12/12/2012 Date of death: 12/12/2017
дизайн интересный, а поток отличный. он показывал только текстовое поле или combobox, в котором я когда-либо находился. Я мог бы перейти на вкладку или использовать мышь, чтобы перейти к любому столбцу, который я хотел бы. как только я оставил один столбец и перешел к следующему, то текстовое поле или combobox исчезнут и будут отображаться в новом столбце.
Я могу добавить текстовое поле в определенное место listview, однако оно постоянно добавляет его в listview вместо того, чтобы отображаться только в этом столбце или ячейке. этот код:
Private Sub ListView1_MouseDoubleClick(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ListView1.MouseClick For i = 0 To ListView1.Items.Count - 1 With txb .Name = ListView1.Items(i).Text.ToString.Replace(":", "") End With Next txb.Location = New Point(ListView1.SelectedItems.Item(0).SubItems.Item(1).Bounds.X, ListView1.SelectedItems.Item(0).SubItems.Item(1).Bounds.Y) ListView1.Controls.Add(txb) ListView1.SelectedItems.Item(0).SubItems.Item(1).Text = txb.Text If Not String.IsNullOrEmpty(ListView1.Items(0).SubItems(1).Text) Then txb.Hide() Else txb.Clear() txb.Show End If End Sub
Что я уже пробовал:
Я пытался использовать listview.controls.remove(txb), но это не сработало так, как я хотел.
Теперь я попробовал метод Скрыть/показать. Это полуработы. Проблема в том, что когда я впервые перехожу к другому подпункту, текст добавляется к нему вместо того, к которому я пытался добавить текст. Еще одна проблема, с которой я столкнулся, связана с txb.clear, я надеялся, что смогу повторно использовать текст в ячейке подпункта и очистить текстовые данные в текстовом поле, прежде чем перейти к подпункту.
Есть предложения?