ฉันมีแผงเค้าโครงตารางสองแผงเคียงข้างกัน กิจกรรมการเลื่อนของทั้งสองแผงเชื่อมโยงกัน ดังนั้นผู้ใช้จึงเลื่อนรายการหนึ่งและรายการอื่นด้วย มันใช้งานได้ดี:
Private Sub Layout_SidePanel_Scroll(sender As Object, e As ScrollEventArgs) Handles Layout_SidePanel.Scroll
If e.ScrollOrientation = ScrollOrientation.VerticalScroll Then
'make the other panel scroll too
Layout_Main.VerticalScroll.Value = Layout_SidePanel.VerticalScroll.Value
End If
End Sub
Private Sub Layout_Main_Scroll(sender As Object, e As ScrollEventArgs) Handles Layout_Main.Scroll
If e.ScrollOrientation = ScrollOrientation.VerticalScroll Then
'make the other panel scroll too
Layout_SidePanel.VerticalScroll.Value = Layout_Main.VerticalScroll.Value
End If
End Sub
อย่างไรก็ตาม เมื่อผู้ใช้ใช้ล้อเลื่อนของเมาส์เพื่อเลื่อน มันก็ไม่ได้ผลดีนัก ด้านหนึ่งจะเลื่อนและไม่อีกด้านหนึ่ง หรืออันหนึ่งจะเลื่อนมากกว่าอันอื่นเล็กน้อย ฉันได้ตรวจสอบค่าการเลื่อนแนวตั้งของทั้งสองแผงแล้ว และพบว่าค่าเหล่านี้ไม่ตรงกัน ฉันจำเป็นต้องให้การเลื่อนทำงานอย่างต่อเนื่องหรือปิดใช้งานการเลื่อนแบบล้อเลื่อนของเมาส์ นี่คือรหัสของฉันสำหรับจัดกิจกรรม mousewheel:
Private Sub Layout_Main_MouseWheel(sender As Object, e As MouseEventArgs) Handles Layout_Main.MouseWheel
Layout_SidePanel.VerticalScroll.Value = Layout_Main.VerticalScroll.Value
End Sub
Private Sub Layout_Sidepanel_MouseWheel(sender As Object, e As MouseEventArgs) Handles Layout_SidePanel.MouseWheel
Layout_Main.VerticalScroll.Value = Layout_SidePanel.VerticalScroll.Value
End Sub