C# - Bildlauf ein Panel in windows forms

Bin ich mit VS2010, Windows 7

Ich habe ein panel mit vielen Bild-Boxen. Es hat

AutoScroll = true

Den scroll-Balken funktionieren, wenn ich ziehen Sie es, oder klicken Sie auf es. Ich möchte jedoch, scrollen Sie mit dem Mausrad und Pfeiltasten.

Die Räder reagieren nicht auf alle (und das hinzufügen von event-Handler der form nicht funktioniert, da hört es brennen, wenn ich den Fokus ändern), und die Pfeiltasten verwenden, ich würde programmgesteuert zu Blättern. Ich habe versucht, die folgenden:

panel3.VerticalScroll.Value = panel3.VerticalScroll.Maximum;

Dies nicht funktioniert, müssen Sie die Bildlaufleiste, kaum bewegt überhaupt. Maximale ist immer 100. - für einige Grund.

Was ich versucht habe auf dem Rad-problem (funktioniert nicht):

//Fires as long as i don't change focus to anything
this.MouseWheel += new MouseEventHandler(Panel1_MouseWheel);

private void Panel1_MouseWheel(object sender, MouseEventArgs e)
{
    panel3.Focus();
}

Danke.

  • Setzen Sie den Fokus auf das Steuerelement, bevor Sie scrollen Sie mit dem Mausrad. Versuchen Sie es erst einmal auf.
  • Funktioniert nicht. Ich klickte das panel, es ist Bild-Boxen, und sogar text-Boxen. Rad hat nicht funktioniert.
  • Die Verwendung eines TablelayoutPanel ?
  • Versucht TableLayoutPanel und FlowLayoutPanel, gleiche Probleme.
InformationsquelleAutor WoF_Angel | 2011-12-24
Schreibe einen Kommentar