Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Media / Animation / SeekStoryboard.cs / 1 / SeekStoryboard.cs
/****************************************************************************\ * * File: SeekStoryboard.cs * * This object includes a Storyboard reference. When triggered, the Storyboard * seeks to the given offset. * * Copyright (C) by Microsoft Corporation. All rights reserved. * \***************************************************************************/ using System.ComponentModel; // DefaultValueAttribute using System.Diagnostics; // Debug.Assert namespace System.Windows.Media.Animation { ////// SeekStoryboard will call seek on its Storyboard reference when /// it is triggered. /// public sealed class SeekStoryboard : ControllableStoryboardAction { ////// A time offset to use for this action. If it is never explicitly /// specified, it will be zero. /// // [DefaultValue(TimeSpan.Zero)] - not usable because TimeSpan.Zero is not a constant expression. public TimeSpan Offset { get { return _offset; } set { if (IsSealed) { throw new InvalidOperationException(SR.Get(SRID.CannotChangeAfterSealed, "SeekStoryboard")); } // TimeSpan is a struct and can't be null - hence no ArgumentNullException check. _offset = value; } } ////// This method is used by TypeDescriptor to determine if this property should /// be serialized. /// // Because we can't use [DefaultValue(TimeSpan.Zero)] - TimeSpan.Zero is not a constant expression. [EditorBrowsable(EditorBrowsableState.Never)] public bool ShouldSerializeOffset() { return !(TimeSpan.Zero.Equals(_offset)); } ////// A time offset origin from which to evaluate the Offset value. /// If it is never explicitly specified, it will be relative to the /// beginning. ("Begin") /// [DefaultValue(TimeSeekOrigin.BeginTime)] public TimeSeekOrigin Origin { get { return _origin; } set { if (IsSealed) { throw new InvalidOperationException(SR.Get(SRID.CannotChangeAfterSealed, "SeekStoryboard")); } if( value == TimeSeekOrigin.BeginTime || value == TimeSeekOrigin.Duration ) // FxCop doesn't like Enum.IsDefined, probably need some central validation mechanism. { _origin = value; } else { throw new ArgumentException(SR.Get(SRID.Storyboard_UnrecognizedTimeSeekOrigin)); } } } ////// Called when it's time to execute this storyboard action /// internal override void Invoke( FrameworkElement containingFE, FrameworkContentElement containingFCE, Storyboard storyboard ) { Debug.Assert( containingFE != null || containingFCE != null, "Caller of internal function failed to verify that we have a FE or FCE - we have neither." ); if( containingFE != null ) { storyboard.Seek(containingFE, Offset, Origin); } else { storyboard.Seek(containingFCE, Offset, Origin); } } TimeSpan _offset = TimeSpan.Zero; TimeSeekOrigin _origin = TimeSeekOrigin.BeginTime; } } // 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
- SqlGatherConsumedAliases.cs
- DayRenderEvent.cs
- PagerSettings.cs
- ColorConvertedBitmap.cs
- NativeMethods.cs
- httpapplicationstate.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- SmiRequestExecutor.cs
- CellLabel.cs
- PrintingPermissionAttribute.cs
- EventLogger.cs
- CodeSpit.cs
- NCryptNative.cs
- ResolvedKeyFrameEntry.cs
- XmlSignatureProperties.cs
- AssemblyResourceLoader.cs
- UIPermission.cs
- Imaging.cs
- DurableInstanceManager.cs
- XmlElementAttribute.cs
- KnownTypesHelper.cs
- HttpConfigurationSystem.cs
- DbConnectionStringBuilder.cs
- webproxy.cs
- TagNameToTypeMapper.cs
- SQLCharsStorage.cs
- IntSecurity.cs
- DesignerVerbCollection.cs
- TagMapCollection.cs
- WebPartUserCapability.cs
- BaseAsyncResult.cs
- XPathQilFactory.cs
- ConstraintCollection.cs
- ResourceType.cs
- Object.cs
- OrderPreservingPipeliningSpoolingTask.cs
- BulletedList.cs
- XPathArrayIterator.cs
- GB18030Encoding.cs
- DataMisalignedException.cs
- RotationValidation.cs
- XpsSerializerFactory.cs
- QuaternionAnimation.cs
- EndpointConfigContainer.cs
- panel.cs
- _SslSessionsCache.cs
- EdmMember.cs
- KoreanCalendar.cs
- DynamicExpression.cs
- UserNamePasswordClientCredential.cs
- UrlMappingCollection.cs
- SHA256.cs
- GenericWebPart.cs
- M3DUtil.cs
- BrowsableAttribute.cs
- DataGridColumnDropSeparator.cs
- ServiceDesigner.cs
- SimpleLine.cs
- Dispatcher.cs
- TextTreeFixupNode.cs
- Symbol.cs
- WebPartConnectionsCloseVerb.cs
- TemplateParser.cs
- CodeTypeDeclaration.cs
- TextParagraph.cs
- RequestCacheEntry.cs
- WebBrowserDesigner.cs
- DataGridViewCellValidatingEventArgs.cs
- DataGridColumnCollection.cs
- InternalBase.cs
- RectangleF.cs
- ToolboxDataAttribute.cs
- StrokeCollection.cs
- RouteParameter.cs
- PolicyManager.cs
- ExtentKey.cs
- ListBase.cs
- DirectionalLight.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- AmbientProperties.cs
- OutputCacheModule.cs
- AttributeProviderAttribute.cs
- HttpBrowserCapabilitiesBase.cs
- ObjectDataSourceChooseTypePanel.cs
- Annotation.cs
- SortableBindingList.cs
- CodeTypeMemberCollection.cs
- CollectionViewGroupInternal.cs
- ReceiveReply.cs
- LoginCancelEventArgs.cs
- CutCopyPasteHelper.cs
- SafeProcessHandle.cs
- DateTimeOffsetStorage.cs
- Rijndael.cs
- RemoteTokenFactory.cs
- validation.cs
- XamlStream.cs
- CollectionsUtil.cs
- BrowserDefinition.cs
- __Filters.cs