Page.SmartNavigation Property



This API is now obsolete.

Gets or sets a value indicating whether smart navigation is enabled. This property is deprecated.

 property bool SmartNavigation { bool get(); void set(bool value); };
public bool SmartNavigation { get; set; }
[System.Obsolete("The recommended alternative is Page.SetFocus and Page.MaintainScrollPositionOnPostBack.")]
public bool SmartNavigation { get; set; }
member this.SmartNavigation : bool with get, set
Public Property SmartNavigation As Boolean

Property Value


true if smart navigation is enabled; otherwise, false.



In most circumstances, do not set this property in code. Set the SmartNavigation attribute to true in the @ Page directive in the .aspx file. When the page is requested, the dynamically generated class sets this property.


In ASP.NET version 2.0, the SmartNavigation property is deprecated. Use the SetFocus method and the MaintainScrollPositionOnPostBack property instead.

When a page is requested by Microsoft Internet Explorer 5.5 browser, or later, smart navigation enhances the user's experience of the page by performing the following:

  • Eliminating the flash caused by navigation.

  • Persisting the scroll position when moving from page to page.

  • Persisting element focus between navigations.

  • Retaining only the last page state in the browser's history.

Smart navigation is best used with ASP.NET pages that require frequent postbacks but with visual content that does not change dramatically on return. Consider this carefully when deciding whether to set this property to true.

Applies to

See also