Большое спасибо .. ну, я нашел ответ - id был проблемой, в методе управления нагрузкой. Я делал этот волшебник. Ну, теперь многое работает. Если кто-то заинтересован, чтобы увидеть, как же это работает .. Есть некоторые обновления:
public void LoadSplitViewControl(string path)
{
SwitchNavigationView(NavigationView.SplitView);
LastNavigationView = NavigationView.SplitView;
LoadControl(SplitControlLoader, path, "LoadedControlSplit");
}
public void LoadSingleViewControl(string path)
{
SwitchNavigationView(NavigationView.SingleView);
LastNavigationView = NavigationView.SingleView;
LoadControl(SingleControlLoader, path, "LoadedControlSingle");
}
public void LoadSingleViewControlAsClear(string path)
{
SwitchNavigationView(NavigationView.SingleView);
LastNavigationView = NavigationView.SingleView;
LoadControlAsClear(SingleControlLoader, path, "LoadedControlSingle");
}
private void LoadControl(PlaceHolder holder, string path, string ID)
{
UserControl ctrl = (UserControl)Page.LoadControl(path);
ctrl.ID = ID;
LastControlPath = path;
holder.Controls.Clear();
holder.Controls.Add(ctrl);
}
// как я с помощью шагов, загруженные элементы управления с помощью SplitView и субшагов управления с использованием единого взгляда иногда ViewState не будет действительно так ошибка будет сброшен, но вы можете решить это, используя LoadSingleViewControlAsClear, который будет загружаться ниже метода.
private void LoadControlAsClear(PlaceHolder holder, string path, string ID)
{
UserControl ctrl = (UserControl)Page.LoadControl(path);
ctrl.ID = ID;
LastControlPath = path;
ctrl.EnableViewState = false;
holder.Controls.Add(ctrl);
}
/другая классная идея, я использую для такого мастера, что я не использую ViewState, а скорее объект сеанса для сохранения значений, собранных за шагом. Мой ключ объекта сеанса генерируется аутентифицированным именем пользователя и pageguid - поэтому у вас может быть много загруженных страниц, и каждый из них будет обрабатывать другой объект сеанса./
public Guid PageGuid
{
get
{
if (PageGuidField.Value == "")
{
var _pageGuid = Guid.NewGuid();
PageGuidField.Value = _pageGuid.ToString();
return _pageGuid;
}
return new Guid(PageGuidField.Value);
}
}
Не глядя на код, вы загружаете эти элементы управления динамически? – epitka