Navrh prostredia aplikacie   zodpovězená otázka

Komponenty, Architektura, .NET

Ahoj

Chcel by som sa spytat ako uz sam nazov napoveda na navrh prostredia mojej aplikacie.

Troska popisem problem. Tazke mam jednoduche okno(Form1) v nom mam na lavej strane ListBox v ktorom mam nejake udaje na ktore ked kliknem tak sa mi na pravej strane Form1 zobrazi urcite TextBox-y a ja neviem co este to je jedno.... ide mi o to ze vzdy ked kliknem v ListBoxe na inu polozku tak sa mi prava strana zmeni... proste zmenia sa TextBox-y Label-y a vsetko ostatne... riesil som to TabControl-om ale tam sa mi nepacia zalozky tak som namiesto Tabov pouzil Panel ale ked ich mam vela na sebe tak mam v tom bordel... Ako riesite taketo veci ked sa vam komponenty prekrivaju??

Dakujem

dodo

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

Řešil jsem podobný problém. Pokud nechcete sáhnout po jiné komponentě TabControl, je tu sice polovičaté, ale zato dle mého názoru vcelku uspokojivé řešení.

Zkuste u objektu TabControl nastavit následující vlastnosti podle kódu :

Me.TabControl1.ItemSize = New System.Drawing.Size(0, 1)
Me.TabControl1.SizeMode = TabSizeMode.Fixed

Obě vlastnosti je samozřejmě možné nastavit i přímo ve vlastnostech TabControl.

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

Dakujem vyskusam a nepisal som ze to musi byt riesene TabControl-om... Ak viete lepsi sposob tak sem s nim...

dodo

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

Já se možná špatně vyjádřil.

Netvrdím, že použití komponenty TabControl není v tomto případě na místě. Spíše naopak. Chtěl jsem tím říct, že se jedná o "polovičaté" řešení v případě mnou, výše uvedeného kódu.

Pokud vyloženě chcete použít standardní TabControl z Visula Studia, je možné toto řešit způsobem, který jsem popsal. Je tu jen malý problémek, který spočívá v tom, že pokud se pozorně na takto nastavený TabControl podíváte, uvidíte v jeho levém horním rohu malinký bod, který vznikne nastavením velikosti ItemSize. Bohužel ItemSize není možné nastavit na 0.

Druhou možností by bylo poohlédnout se po nějakém TabControlu třetích stran. Na Netu se jich povaluje docela dost a jsou určitě v tomto směru flexibilnější, než ten standardní.

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

Ano ten stvorcek som si vsimol. Potom mi rozumnejsie pripada pouzit Panel. Panely naskladat na seba aj s komponentami a jednoducho ich vo vlastnostiach pomocou Visible true/false skryvat a odkryvat...

Panely tretich stran nepoznam... je na to nejaka specialna stranka kde by som ich nasiel a kde sa daju stiahnut?

dodo

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

Náhodou jsem řešil naprosto stejný problém. Potřeboval jsem jednoduše udělat přepínání stránek v průvodci. Řešení je následující:

TabControl1.ItemSize = New System.Drawing.Size(0, 1)
TabControl1.SizeMode = TabSizeMode.Fixed
'A teď pozor:
TabControl1.Appearance = TabAppearance.Buttons

Voila! Vzhled Panelu, funkčnost TabControlu a žádné čtverečky!!! Myslím že je to ideální řešení bez nutnosti komponent třetích stran.

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

Smekám pane Linhart.

To je přesně ono.

Jdu to upravit ve svých stávajících projektech.

Děkuji.

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

Super p.Linhart mat vase znalosti tak... :)

Hned ked budem moct tak to vyskusam... este sa ale spytam ci dobre myslim... teraz vlastne mozme pracovat s TabControl-om normalne akurat mi nebude zobrazovat zalozky?

//Edit: Tak vyskusal som to(nedalo mi to v praci :)) funguje to presne ako TabControl len zalozky su schovane... super

Este raz dakujem

dodo

nahlásit spamnahlásit spam 1 / 1 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