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
- PerformanceCountersElement.cs
- StreamHelper.cs
- updateconfighost.cs
- TimeoutTimer.cs
- FieldDescriptor.cs
- GridItemPattern.cs
- CodeTypeMemberCollection.cs
- precedingquery.cs
- HandlerWithFactory.cs
- FormatException.cs
- Rijndael.cs
- glyphs.cs
- COAUTHIDENTITY.cs
- MDIWindowDialog.cs
- IgnoreFileBuildProvider.cs
- EventListenerClientSide.cs
- ConfigurationLocation.cs
- DataGridViewSelectedColumnCollection.cs
- ConnectorSelectionGlyph.cs
- SignatureHelper.cs
- StylusButton.cs
- PointLightBase.cs
- ModelItemDictionaryImpl.cs
- EdgeModeValidation.cs
- XmlDataSource.cs
- COM2AboutBoxPropertyDescriptor.cs
- CompoundFileStorageReference.cs
- HtmlTableCellCollection.cs
- SimpleBitVector32.cs
- EqualityComparer.cs
- ScrollChrome.cs
- MemberCollection.cs
- FixedDocumentPaginator.cs
- ResourceDictionaryCollection.cs
- QuaternionKeyFrameCollection.cs
- TypedElement.cs
- PermissionRequestEvidence.cs
- MdImport.cs
- RadioButtonStandardAdapter.cs
- SqlCharStream.cs
- JoinTreeNode.cs
- CombinedGeometry.cs
- ObjectViewFactory.cs
- UrlMappingCollection.cs
- ResourceManager.cs
- ExclusiveCanonicalizationTransform.cs
- AnnotationStore.cs
- SpeechEvent.cs
- TdsParameterSetter.cs
- DictionaryGlobals.cs
- ToolboxItemLoader.cs
- PropertyFilterAttribute.cs
- OleDbParameter.cs
- SmtpFailedRecipientException.cs
- ValidationError.cs
- EntityCommand.cs
- XamlSerializationHelper.cs
- AesCryptoServiceProvider.cs
- DateTimeConverter2.cs
- Switch.cs
- DesignerGeometryHelper.cs
- ManagementBaseObject.cs
- ByteAnimation.cs
- XamlParser.cs
- QilTypeChecker.cs
- XmlSortKey.cs
- IPCCacheManager.cs
- XmlILConstructAnalyzer.cs
- EventRecord.cs
- PrinterUnitConvert.cs
- Comparer.cs
- SystemBrushes.cs
- HoistedLocals.cs
- FormViewRow.cs
- GeometryModel3D.cs
- TimelineGroup.cs
- WindowsListViewGroupHelper.cs
- VirtualStackFrame.cs
- SoapAttributeOverrides.cs
- ActiveDocumentEvent.cs
- LocalBuilder.cs
- MailHeaderInfo.cs
- ObjectDataProvider.cs
- UInt16.cs
- TextProviderWrapper.cs
- DrawListViewColumnHeaderEventArgs.cs
- DataGridParentRows.cs
- SecurityPermission.cs
- FileChangesMonitor.cs
- RowCache.cs
- XmlRawWriterWrapper.cs
- HealthMonitoringSection.cs
- ByteStreamGeometryContext.cs
- LinqToSqlWrapper.cs
- EventBuilder.cs
- RepeatInfo.cs
- CodeEntryPointMethod.cs
- Clock.cs
- EdmItemCollection.OcAssemblyCache.cs
- SQLBinaryStorage.cs