op_Explicit   zodpovězená otázka

C#

Předělal jsem Snippet pana Linharta a v mém projektu na řádku

            WndProc(ref Message.Create(this.Handle, 0xa1, IntPtr.op_Explicit(2), IntPtr.Zero));

hází chybu

System.IntPtr.explicit operator System.IntPtr(int)': cannot explicitly call operator or accessor

Nevíte co s tím?

PS: Kód mám v UserControlu

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Jaký je to snippet?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

http://www.vbnet.cz/snippet--51-vlastni_...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zkoušel jsem přesně tento kód zkopírovat do nové Windows Forms aplikace ve Visual Basicu, funguje naprosto bez problémů.

A není to určeno pro vlastní ovládací prvek (jak by se taky mohl přesouvat tímto způsobem?!), ale pro okno s FormBorderStyle = None.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Já jen, že se mi ve VB tímto způsobem přesouvali i komponenty. V C# je ten dotyčný error

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Na přesouvání ovládacích prvků po formuláři vůbec není potřeba unmanaged kód tak nepoužívejte věci k tomu, k čemu nejsou určeny.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

A co mám tedy použít?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Hlavu a běžné vlastnosti a události ovládacích prvků Windows Forms (Location, MouseMove, MouseDown...).

nahlásit spamnahlásit spam 3 / 3 odpovědětodpovědět

Dnes jsem zcela náhodou při použití Windows API zjistil, že IntPtr.op_Explicit(2) ve Visual Basicu odpovídá new IntPtr(2) v C#.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback