Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: Vlastní ovládací prvek

C# .NET .NET (C# a Visual Basic) Vlastní ovládací prvek American English version English version

Aktivity (1)
Avatar
Doupak
Člen
Avatar
Doupak:16.9.2013 17:57

Zdravím,

potřeboval bych udělat vlastní ovádací prvek. Ve win forms je to System.Forms.Con­trol. V tom problém není. Ani v návrhu není problém. Mám pouze problém v tom, že jsem limitován "ClientRectangle". Potřeboval bych prvek, který právě není obdelník. Například kruh nebo čára, která se různě lomí. Potřebuji však eventy právě z Control. Jako je např.:

public event MouseEventHandler MouseClick
public event EventHandler MouseEnter
public event EventHandler MouseLeave

Když udělám (metoda z vlastního ovládacího prvku)

protected override void OnPaint(PaintEventArgs e)
{
    Graphics g = e.Graphics;
    Rectangle rec = ClientRectangle;
    g.DrawEllipse(new Pen(Color.Blue, 7), rec);
    g.FillEllipse(new SolidBrush(Color.Red), rec);
    base.OnPaint(e);
}

Tak se mi sice vykreslí kruh, ale události se odchytávají i mimo něj. Právě v tom místě, kde není kruj, ale kde je stále ClientRectangle.

Možná na to jdu úplně špatně. Budu vděčný za jakékoliv nápady.

Radši mám Windows Forms, protože s tím mám větší zkušenosti. Ale nebudu se bránit ani WPF.

Editováno 16.9.2013 17:59
 
Odpovědět 16.9.2013 17:57
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.