Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

C# visual studio - Budowa menu

jaamateo 05 Sty 2013 17:04 1389 3
  • #1 05 Sty 2013 17:04
    jaamateo
    Poziom 7  

    Witam, próbuje zbudować menu na wzór tego z załączonego obrazu. Czyli wybierając
    przyciski z lewej strony po prawej wyświetla się "panel" z dostępnymi opcjami wyboru, zaznaczania itp. Pytanie za pomocą jakich komponentów mogę to zbudować? proszę o wskazówki.

    C# visual studio - Budowa menu

    0 3
  • #2 05 Sty 2013 17:31
    Dżyszla
    Poziom 42  

    Np przycisków aby dostać przyciski z lewej strony i paneli aby zbudować panel z prawej strony. A naciśnięcie każdego przycisku będzie pokazywało właściwy panel i chowało pozostałe (alternatywnie coś podobnego robi pagecontrol czy tam tabcontrol).

    0
  • #3 05 Sty 2013 19:09
    Mad.
    Poziom 18  

    Nie napisałeś z jakiego API korzystasz, co jest kluczowe, żeby dać jakieś propozycje.

    Windows Forms
    Możesz wstawić dwa razy kontrolkę SplitContainer z grupy Continers. Drugą można umieścić w pierwszej. Dzięki temu uzyskasz trzy panele - dolny, lewy i prawy. Do prawego panelu, po kliknięciu na wybrany przycisk, możesz ładować odpowiedni User Control (dodajesz go z poziomu projektu).

    WPF
    Okno możesz podzielić za pomocą DockPanel (może być również Grid). Korzystając z właściwości dołączonych (attached properties), możesz rozmieścić kolejne panele. Po lewej stronie może być na przykład StackPanel z przyciskami:

    Kod: xml
    Zaloguj się, aby zobaczyć kod

    Najważniejsza będzie prawa część okna. Tam można umieścić kontener Frame, do którego można podpinać strony - Page (dodawane z poziomu projektu). Czyli osobne pliki xaml.

    Może są lepsze rozwiązania... ja nie mam dużego doświadczenia z GUI ;)

    0
  • #4 06 Sty 2013 21:00
    Defice
    Poziom 25  

    Nikt nie zaproponował jeszcze użycia Mdi container i otwierania w nim formatek. Obecnie piszę aplikację i właśnie w ten sposób rozwiązałem problem okna głównego oraz dodatkowych formatek wyświetlanych wewnątrz niego.

    Nie znalazłem rozwiązania bezpośrednio dla kolegi, ale tu można obejrzeć co i jak. Warto zapoznać się z opcją.

    http://www.dreamincode.net/forums/topic/57601-using-mdi-in-c%23/

    Ja u siebie robię to w taki sposób, że po wybraniu z menu buttona wywołuje:

    Kod: csharp
    Zaloguj się, aby zobaczyć kod


    Dzięki czemu w oknie głównym mam wrzuconą formatkę na całym obszarze (dzięki maksymalizacji).

    0