Child form   otázka

VB.NET, WinForms

Zdravím, mám problém se zobrazením child formu v MDI formu. Potřebuji, aby byl child form maximalizovaný přes celý MDI form, což není problém. Problém je to, že po maximalizaci se zobrazí v pravém horním rohu ControlBox, MinimizeBox a MaximizeBox, i když jsou nastaveny na false. Nepomáhá ani změna FormBorderStyle u child formu.

Child form otevírám následovně:

        ListOfObjects.MdiParent = Me
        ListOfObjects.WindowState = FormWindowState.Maximized
        ListOfObjects.Show()
        ListOfObjects.Update()

Díky

M.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

To je standardní chování MDI oken které nezměníte a ani není žádoucí ho měnit.

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

Dobrý den,

dá se to řešit takto:

 Me.IsMdiContainer = True
 Me.MainMenuStrip = New MenuStrip
 Dim ChildForm As New Form2
 ChildForm.WindowState = FormWindowState.Maximized
 ChildForm.MdiParent = Me
 ChildForm.Show()

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Děkuji, opravdu pomohlo před kód vložit řádek

Me.MainMenuStrip = New MenuStrip

Díky

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Pokud vám nevadí takovéto prasárny jako vkládat prázdný pruh nabídek bez zjevného důvodu, pak je to v pořádku. Uvědomte si, že je to pouze vedlejší efekt, který vložením prázdného pruhu nabídek vznikne. Nechápu proč za každou cenu chcete měnit standardní chování MDI oken. Způsobem jaký praktikujete vy vznikají právě takové prasácké aplikace, které nedodržují standardy uživatelského rozhraní a ovládání Windows.

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Osobně jsem se docela natrápil řešením chování WinForms aplikace, mimo jiné proto, že jsem někdy neřešil věci snand.způsobem, což se nakonec ukázalo jako krok chybným směrem. Určitě velice oporučuji, tak jak vás směruje i pan Linhart, držet se stardardního chování, které je obvyklé u Windows.

1. pokud někdo jiný takovou aplikaci využívá, bude mu velmi pravděpodobně nejbližší standardní chování. Veškeré nestandardní prvky chování jsou pak spíše matoucí.

2. pokud by jste i přes to skutečně chtěl měnit nějaké standardní chování, velice dobře si to rozmyslete a musí k tomu být opravdu hodně dobrý důvod.

3. proč vymýšlet něco co je dlouhodobě prověřeno praxí

4. držte se zaběhlé šablony a zaměřte raději své úsilí na kvalitu fungování aplikace, než na vymýšlení nových postupů

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

Tak jsem zagooglil a toto řešení se nachází i zde http://social.msdn.microsoft.com/Forums/... To bude asi extrémně velká prasárna.Neříkám, že neni, ale pokud to bude jediná v aplikaci tak to tradédie neni.

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