Avatar billede alm1 Nybegynder
10. august 2005 - 10:00 Der er 5 kommentarer og
2 løsninger

Combobox uden scroll. Windows. VB.NET

Hej!

Jeg vil gerne undgå, at der kan scrolles i en Combobox!
Kan det lade sig gøre?
Avatar billede januskh Nybegynder
21. september 2005 - 23:58 #1
Kunne dette måske være en ide?

    ComboBox1.MaxDropDownItems = ComboBox1.Items.Count

Med venlig hilsen

Janus Kamp Hansen
Avatar billede alm1 Nybegynder
22. september 2005 - 09:09 #2
Tak for buddet, men det løser ikke mit problem, som mere præcist er, at hvis man stiller sig i boxen, uden at droppe den down, kan man scrolle i den.
Dvs. at hvis man åbner formen og boxen har focus, og man kommer til at scrolle på museknappen, skifter værdien i boxen, - måske uden at man opdager det -. "Uhensigtsmæssigt":-)
Avatar billede januskh Nybegynder
22. september 2005 - 12:15 #3
Nå, men så er det jo en anden sag.

Du laver dit egen nedarvede komponent; Således:

Public Class CustomComboBox
  Inherits ComboBox

  Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
    Const WM_MOUSEWHEEL As Int32 = &H20A
    If m.Msg <> WM_MOUSEWHEEL Then
      MyBase.WndProc(m)
    End If
  End Sub

End Class

Så ændrer du:
Friend WithEvents ComboBox1 As System.Windows.Forms.Combobox
til:
Friend WithEvents ComboBox1 As CustomComboBox

og lidt længere nede i koden, ændres fra:
Me.ComboBox1 = New System.Windows.Forms.Combobox
til:
Me.ComboBox1 = New test.CustomComboBox

Med venlig hilsen

Janus Kamp Hansen
Avatar billede januskh Nybegynder
22. september 2005 - 12:17 #4
Sorry, nederste linie skal se således ud:
Me.ComboBox1 = New CustomComboBox

(Mit lille projekt hedder "Test", derfor var den prefixed)

Janus Kamp Hansen
Avatar billede alm1 Nybegynder
22. september 2005 - 12:27 #5
Bedste Janus!

Min dag er reddet!
Det virker helt efter bogen:-)
Tusind tak for det.

Er det noget du selv har fremtryllet, eller hvor er du stødt på koden henne?

De bedste hilsner
Anders
Avatar billede januskh Nybegynder
22. september 2005 - 13:54 #6
Jeg studsede lige over det på denne her side:

http://www.dotnet247.com/247reference/msgs/46/230478.aspx

Her er det dog et listview, hvor man disabler mousewheel.

Janus Kamp Hansen
Avatar billede alm1 Nybegynder
22. september 2005 - 13:56 #7
Tak for det!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester