C# kolejne strony aplikacji (a'la instalator)

Witam,

chciałbym utworzyć aplikację windows form, której działanie wyglądało mniej wiećej tak:

  1. Wybierz (opcje) Dalej

  2. Jakieś działanie użytkownika Dalej.

  3. Podsumowanie. Koniec

Każdy krok miałby swoje kontrolki itd, jednak nie mogę uzyskać takiego efektu.

Może ktoś podpowie jak to się robi albo chociaż podrzuci kilka słów kluczowych :slight_smile: ( jakiś szkic kodu)

Może coś takiego ??

Stos paneli, lub lepiej, UserControls, które dzielą jeden obiekt ustawień(by w jakiś sensowny sposób dostać się do tego, co użytkownik wybrał)? Kliknięcie “Dalej” powoduje usunięcie lub ukrycie aktualnie wyświetlanej kontrolki, dzięki czemu pojawia się ta, która była bezpośrednio za. Proste w implementacji i myślę, że będzie wystarczające.

Próbowałem z panelami ale ukrywanie (panel.Hide()) czy wyłączenie widoku (panel.Visible = false) nie przynosiło mi pozytywnych rezulatatów.

edit udało mi się z panelami, na razie dzięki zobaczymy czy to wystarczy

@grzelix

Możesz też przejrzeć ten topic http://forum.dobreprogramy.pl/tworzenie-menu-visual-t438694.html. Opisywałem tam rozwiązanie oparte o kontrolkę SplitContainer.

Dla każdego widoku oddzielna UserControlka, a przyciski “Dalej” i “Wstecz” je zmieniają.

Można też wpisać w Google “wizard in C#” i zapoznać się z wynikami, pewno pierwszy zaprowadzi do jakiejś gotowej implementacji.

Najwygodniej pewnie będzie użyć TabControl i albo przeciążyć rysowanie kart (trudniejsze, ale lepiej będzie działało), albo przyciąć/ukryć pod panelem wystające części kart (warto ustawić Appearance kontrolki na FlatButtons). TabControl domyślnie oferuje wiele widoków, które można łatwo wypełniać kontrolkami. Jest jeszcze trzecia droga: własna kontrolka odpowiadająca zapotrzebowaniu piszącego. Wbrew pozorom nie jest to wcale aż takie trudne. :slight_smile:

Nie ma sensu bawić się z kartami itd. W .NET jest już klasa która odpowiada za tworzenie graficznych kreatorów: http://msdn.microsoft.com/en-us/library … izard.aspx

Tutaj jest dokładnie wytłumaczone jak zrobić taki kreator/instalator krok po kroku w Visual Studio i C#: http://msdn.microsoft.com/en-us/library/aa291437(VS.71.aspx

Tyle że http://msdn.microsoft.com/en-us/library … izard.aspx jest w przestrzeni System.Web… :wink:

grzelix - czy udało Ci się w końcu z panelami? Czy może skorzystałeś z poradnika który podałem? Pytam, bo być może też będę tego niedługo potrzebowal i ciekawy jestem która opcja jest łatwiejsza i szybsza.

@mmaurice

zastosowałem porady odnoście paneli i wygląda to dość dobrze, natomiast ta aplikacja ma u mnie niski priorytet i na razie nie jest wiele zaimplementowane (być może zweryfikuje jeszcze inne metody).