En eventhandler til scroll
Jeg er ved at lave en funktion til et csharp program. Funktionen går ud på, at når brugeren scroller, så skal formen refreshes. Funktionen skal bruges i et stort program, men under udvikling har jeg lavet et test-program. Her er det:using System;
using System.Windows.Forms;
using System.Drawing;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1() // Her er formens konstruktor
{
InitializeComponent();
this.WindowState = FormWindowState.Normal;
this.Size = new Size(996, 621);
this.Location = new Point(130, 150);
// An EventHandler is assigned to the scroll event
this.Scroll += new egen_scroll_event(this.Scroll); // Her er linie 17.
}
}
public delegate void egen_scroll_event(object sender, ScrollEventArgs e);
// A class that works just like scrollbar, but sends event notifications whenever the list changes.
public class scroll_klasse
{
// An event that clients can use to be notified whenever the user scrolls.
public event egen_scroll_event Scroll;
// Invoke the Changed event; called whenever scroll
protected virtual void OnChanged(ScrollEventArgs e)
{
if (Scroll != null)
Scroll(this, e);
}
public void egen_scroll_event(object sender, ScrollEventArgs e)
{
Console.WriteLine("This is called when the event fires.");
// Her skal formen refreshes.
}
}
}
Der er en fejl i linie 17. Her er fejlmeddelelsen:
Error 1 The event 'System.Windows.Forms.ScrollableControl.Scroll' can only appear on the left hand side of += or -= C:\Users\bjs\Desktop\...\WindowsFormsApplication1\WindowsFormsApplication1\Form1.cs 17 55 WindowsFormsApplication1
Under properties er autoscroll sat til true.
Er der en, der kan se hvorfor fejlmeddelelsen kommer?
MVH
Bjarne