Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Navigation / NavigatingCancelEventArgs.cs / 1305600 / NavigatingCancelEventArgs.cs
//----------------------------------------------------------------------------------------------
// File: NavigatingCancelEventArgs.cs
//
// Copyright (C) 2004 by Microsoft Corporation. All rights reserved.
//
// Description:
// This event is fired before we start a navigation. The NavigationMode
// property specifies the type of navigation (normal, refresh, journal)
// This event is fired on INavigator and refired on the Application
//
// History:
// 08/10/04: kusumav Moved out of Application.cs to its own separate file.
//
//---------------------------------------------------------------------------------------------
using System.ComponentModel;
using System.Net;
namespace System.Windows.Navigation
{
///
/// Event args for Navigating event.
/// The NavigatingCancelEventArgs contain the uri or root element of the content being navigated to
/// and an enum value that indicates the type of navigation. Canceling this event prevents the
/// application from navigating. By default, Cancel is set to false.
/// Note: An application hosted in the browser cannot prevent navigation away from the application
/// by canceling this event.
/// Note: In the PDC build, if an application hosts the WebOC, this event is not raised for
/// navigations within the WebOC.
///
public class NavigatingCancelEventArgs : CancelEventArgs
{
// Internal constructor
// URI of the markup page being navigated to.
// Root of the element tree being navigated to.
// Enum {New, Back, Forward, Refresh}
// navigator that raised this event
internal NavigatingCancelEventArgs(
Uri uri, Object content, CustomContentState customContentState,
Object extraData, NavigationMode navigationMode,
WebRequest request, object Navigator, bool isNavInitiator)
{
_uri = uri;
_content = content;
_targetContentState = customContentState;
_navigationMode = navigationMode;
_extraData = extraData;
_webRequest = request;
_isNavInitiator = isNavInitiator;
_navigator = Navigator;
}
///
/// URI of the markup page being navigated to.
///
public Uri Uri
{
get
{
return _uri;
}
}
///
/// Root of the element tree being navigated to.
/// Note: Only one of the Content or Uri property will be set, depending on whether
/// the navigation was to a Uri or an existing element tree.
///
public Object Content
{
get
{
return _content;
}
}
/// Target custom content state or view state
public CustomContentState TargetContentState
{
get { return _targetContentState; }
}
///
/// An event handler can set this property to the current content state or view state, to be
/// saved in a journal entry. If not provided here, the framework will call
/// IProvideCustomContentState.GetContentState() on the current Content object.
///
public CustomContentState ContentStateToSave
{
set { _contentStateToSave = value; }
get { return _contentStateToSave; }
}
///
/// Exposes extra data object which was optionally passed as a parameter to Navigate.
///
public Object ExtraData
{
//Though we are handing out an object that may potentially contain
//sensitive information, no one can use it except the app developer
//unless they have type information for this object. One cannot de-serialize
//this without Serialization permissions which are not granted by default
//in partial trust scenarios.
get
{
return _extraData;
}
}
///
/// NavigationMode Enum {New, Back, Forward, Refresh} - where New means a new navigation,
/// Forward, Back, and Refresh mean the navigation was initiated from the GoForward, GoBack,
/// or Refresh method (or corresponding UI button).
///
public NavigationMode NavigationMode
{
get
{
return _navigationMode;
}
}
///
/// Exposes the WebRequest used to retrieve content. This enables access to HTTP headers.
///
public WebRequest WebRequest
{
get
{
return _webRequest;
}
}
///
/// Indicates whether this navigator is initiating the navigation or whether a parent
/// navigator is being navigated (e.g., the current navigator is a frame
/// inside a page thats being navigated to inside a parent navigator). A developer
/// can use this property to determine whether to spin the globe on a LoadStarted event or
/// to stop spinning the globe on a LoadCompleted event.
/// If this property is False, the navigators parent navigator is also navigating and
/// the globe is already spinning.
/// If this property is True, the navigation was initiated inside the current frame and
/// the developer should spin the globe (or stop spinning the globe, depending on
/// which event is being handled.)
///
public bool IsNavigationInitiator
{
get
{
return _isNavInitiator;
}
}
///
/// The navigator that raised this event
///
public object Navigator
{
get
{
return _navigator;
}
}
private Uri _uri;
private Object _content;
private CustomContentState _targetContentState, _contentStateToSave;
private Object _extraData;
private NavigationMode _navigationMode;
private WebRequest _webRequest;
private bool _isNavInitiator;
object _navigator;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CallContext.cs
- SmiTypedGetterSetter.cs
- ErrorActivity.cs
- XamlStackWriter.cs
- XmlProcessingInstruction.cs
- DataTableTypeConverter.cs
- InvalidAsynchronousStateException.cs
- StoreContentChangedEventArgs.cs
- SchemaElementLookUpTable.cs
- RemoteWebConfigurationHostStream.cs
- XmlSchemaCompilationSettings.cs
- WrapPanel.cs
- CompilerResults.cs
- HandledMouseEvent.cs
- InertiaRotationBehavior.cs
- CachedBitmap.cs
- XslException.cs
- DetailsViewDeletedEventArgs.cs
- SoapEnumAttribute.cs
- HtmlTableCell.cs
- NavigateEvent.cs
- ExtendedProtectionPolicyTypeConverter.cs
- XPathMessageFilterElementComparer.cs
- PerformanceCounterCategory.cs
- ProtocolsConfigurationHandler.cs
- PropertyPathWorker.cs
- TabControlEvent.cs
- LinkUtilities.cs
- CatalogPartChrome.cs
- OleDbInfoMessageEvent.cs
- GridViewPageEventArgs.cs
- XmlSchemaParticle.cs
- MenuItemCollection.cs
- SaveFileDialog.cs
- MD5CryptoServiceProvider.cs
- BindingObserver.cs
- WebBrowsableAttribute.cs
- AdRotator.cs
- ManipulationInertiaStartingEventArgs.cs
- OdbcConnectionPoolProviderInfo.cs
- EventMappingSettings.cs
- ObjectSecurity.cs
- BaseUriHelper.cs
- DescendantBaseQuery.cs
- MeshGeometry3D.cs
- MemoryStream.cs
- AssemblyNameProxy.cs
- TextStore.cs
- DependencyPropertyConverter.cs
- COM2TypeInfoProcessor.cs
- FixedNode.cs
- MessageQueuePermissionAttribute.cs
- _NegoState.cs
- wgx_exports.cs
- DataGridView.cs
- ResourcesGenerator.cs
- CollectionBase.cs
- ResourceWriter.cs
- GlyphTypeface.cs
- FragmentNavigationEventArgs.cs
- XmlSortKeyAccumulator.cs
- CursorInteropHelper.cs
- WSDualHttpBinding.cs
- ConnectionPoolManager.cs
- MessageHeaderT.cs
- ArrayConverter.cs
- CriticalFinalizerObject.cs
- AnnouncementSendsAsyncResult.cs
- PtsHost.cs
- Bitmap.cs
- IssuedTokenParametersElement.cs
- FormsAuthenticationEventArgs.cs
- InkSerializer.cs
- AuthenticatedStream.cs
- COM2PropertyPageUITypeConverter.cs
- BitArray.cs
- DuplicateWaitObjectException.cs
- PersistenceContext.cs
- XmlChildEnumerator.cs
- PersonalizationStateQuery.cs
- NamedPermissionSet.cs
- Paragraph.cs
- DesignerVerb.cs
- StaticDataManager.cs
- PresentationTraceSources.cs
- ColumnHeaderConverter.cs
- PageTheme.cs
- Int32Collection.cs
- TargetException.cs
- SoapExtensionTypeElementCollection.cs
- StylusCaptureWithinProperty.cs
- BatchStream.cs
- DefaultMergeHelper.cs
- DependencyPropertyHelper.cs
- TabPage.cs
- ToolStripTextBox.cs
- PathFigure.cs
- SiteMapDataSource.cs
- LoginAutoFormat.cs
- NullableFloatAverageAggregationOperator.cs