Skip to main content
.NET 8.0+

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

Frame.SetView(View, Boolean, Frame, Boolean) Method

Sets a specified View for the current Frame.

Namespace: DevExpress.ExpressApp

Assembly: DevExpress.ExpressApp.v24.2.dll

NuGet Package: DevExpress.ExpressApp

#Declaration

public bool SetView(
    View view,
    bool updateControllers,
    Frame sourceFrame,
    bool disposeOldView
)

#Parameters

Name Type Description
view View

A View object which is set for the current Frame.

updateControllers Boolean

true, if the Frame’s Controllers are activated after setting a new View; otherwise, false.

sourceFrame Frame

A Frame object in which creating a new View was requested.

disposeOldView Boolean

true, if the Frame’s old View should be disposed; otherwise, false.

#Returns

Type Description
Boolean

true, if an old View can be changed by another one; otherwise, false.

#Remarks

This overload of the SetView method allows you to apply Application Model changes to a View without recreating it. Save the Frame’s View to a variable, then set the Frame’s View to null. Make the required changes to the model and then set the saved View back to the Frame.

View view = Frame.View;
if(Frame.SetView(null, true, null, false)) {
    // Make required changes with the model here.
    // ...
    view.LoadModel(false);
    Frame.SetView(view);
}

It is recommended to pass false to the View.LoadModel method to avoid creating controls within this method. Otherwise, the OnViewControlCreated methods of View’s Controllers will not be called.

The complete example of a Controller that uses the SetView method is provided in the How to: Apply Application Model Changes to the Current View Immediately topic.

See Also