Hallo luitjes,
ik ben momenteel aan het proberen een knop te maken met daarop geen tekst, maar een pijl omhoog of omlaag zoals bij een scrollbar. Mijn plan was om een eigen klasse te maken, deze laten overerven van de klasse Button en vervolgens de OnPaint-methode overriden om mijn eigen tekenfunctionaliteit toe te voegen.Hierbij zou ik echter wel wensen dat de knop de look en feel heeft van de standaard Microsoftknop, dus vandaar dat ik Button extend en niet ButtonBase.
De knoppen zien er echter zo uit:

Verder vertoont de knop ook nog het probleem dat het bovenste stuk groen kleurt als de muis boven deze control hangt. Mijn code ziet er momenteel zo uit:
Zien jullie wat er fout gaat? Ik heb al vanalles geprobeerd: eerst base.OnPaint, laatst base.OnPaint, OnPaintBackground override en leeglaten of gewoon zo laten... Niets lijkt te helpen.
ik ben momenteel aan het proberen een knop te maken met daarop geen tekst, maar een pijl omhoog of omlaag zoals bij een scrollbar. Mijn plan was om een eigen klasse te maken, deze laten overerven van de klasse Button en vervolgens de OnPaint-methode overriden om mijn eigen tekenfunctionaliteit toe te voegen.Hierbij zou ik echter wel wensen dat de knop de look en feel heeft van de standaard Microsoftknop, dus vandaar dat ik Button extend en niet ButtonBase.
De knoppen zien er echter zo uit:

Verder vertoont de knop ook nog het probleem dat het bovenste stuk groen kleurt als de muis boven deze control hangt. Mijn code ziet er momenteel zo uit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| public class ArrowButton : Button { protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); Graphics g = e.Graphics; g.DrawLine(new Pen(Color.Black), 0, 0, this.ClientSize.Width, this.ClientSize.Height); } protected override void OnPaintBackground(PaintEventArgs e) { } } |
Zien jullie wat er fout gaat? Ik heb al vanalles geprobeerd: eerst base.OnPaint, laatst base.OnPaint, OnPaintBackground override en leeglaten of gewoon zo laten... Niets lijkt te helpen.