Как настроить пошаговый процесс - PullRequest
3 голосов
/ 15 февраля 2011

Я создаю приложение, которое должно обрабатывать случаи строительства небольшой компании.Чтобы сотрудники могли создать новое дело, я хочу провести их пошаговую процедуру.Как мне настроить такой процесс?

Я попытался вместо этого разместить их на панелях, но это все еще кажется не слишком элегантным способом решения этой проблемы.

Прямо сейчас я скрываю / показываю множество текстовых полей и списков по отдельности.Есть ли какой-то более умный (более правильный) способ сгруппировать их.Или кто-то может предложить другой подход к этому?Я строю это в C #.

Ответы [ 2 ]

3 голосов
/ 15 февраля 2011

Лучший способ, который я использовал в этом сценарии, - это создать все свои кнопки, текстовые поля и т. Д. Для одного шага в UserControl и делать то же самое для каждого шага, а лучше встраивать весь свой код, относящийся к этому шагу, в этот элемент управления.

В форме сохраняются только те элементы управления, которые являются универсальными для каждого шага.Затем создайте контейнерный элемент управления, такой как Panel , в форме заполнителя (чтобы вам не приходилось беспокоиться о позиционировании. Однако вы можете даже в коде установить расположение элемента управления в форме и непосредственноДобавьте его в коллекцию элементов управления формы)

Затем на первом шаге создайте новый экземпляр UserCotrol для первого этапа и добавьте первый элемент UserControl в коллекцию элементов управления Forms или этот контейнерный элемент управления (панель) и на следующем шаге удалите его иЗамените его на Next UserControl.

Таким образом, вы не будете иметь все элементы управления в памяти все время, и они будут создаваться при необходимости и удаляться, когда не требуется.Он эффективен, а также изолирует каждый шаг, поэтому у вас есть управляемый код для каждого шага.

2 голосов
/ 15 февраля 2011

А как насчет создания мастера для него? Надеюсь, что следующие ссылки также помогут вам.

  1. Каков наилучший способ создания мастера в C # 2.0?
  2. Создание мастеров для Windows Forms в C #
  3. Создание мастеров для выигрышных форм в C #
...