#vb.net #drag-and-drop #tabcontrol #tabpage
#vb.net #перетаскивание #tabcontrol #страница вкладки
Вопрос:
У меня есть два datagridviews, и я перетаскиваю между ними. Но теперь я должен поместить их на две вкладки в одном tabcontrol. Страницы должны меняться во время перетаскивания, когда я перемещаю мышь к нужному заголовку страницы, когда левая кнопка нажата. Как я могу сделать? Спасибо
Комментарии:
1. Вам нужно событие GiveFeedback. Управление. Положение мыши указывает, где находится мышь, TabControl. PointToClient() указывает вам его положение относительно вкладок. Повторите вкладки, сравните с их GetTabRect(), чтобы увидеть, зависает ли вкладка.
Ответ №1:
Спасибо за воспроизведение! Это мой код:
Private Sub DataGridView1_GiveFeedback(sender As Object, e As GiveFeedbackEventArgs) Handles DataGridView1.GiveFeedback
Dim position As Point = TabControl1.PointToClient(Control.MousePosition)
For id As Integer = 0 To TabControl1.TabCount - 1
If TabControl1.GetTabRect(id).Contains(position) Then
TabControl1.SelectedIndex = id
Exit For
End If
Next
End Sub
это работает, но не в том случае, если я просто перемещаюсь между заголовками вкладок