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
- ConfigurationSchemaErrors.cs
- CommandLineParser.cs
- ObjectIDGenerator.cs
- EncryptedKeyHashIdentifierClause.cs
- NameNode.cs
- GeneralTransform3DGroup.cs
- DeflateEmulationStream.cs
- NonParentingControl.cs
- UidManager.cs
- ExpressionNode.cs
- MultiBinding.cs
- GridViewEditEventArgs.cs
- ToolStripDropDownMenu.cs
- PeerChannelFactory.cs
- AuthenticationConfig.cs
- C14NUtil.cs
- OpenTypeCommon.cs
- OdbcParameter.cs
- NullReferenceException.cs
- SqlDataSourceDesigner.cs
- dtdvalidator.cs
- PagePropertiesChangingEventArgs.cs
- ClientTarget.cs
- WindowsAuthenticationModule.cs
- coordinatorfactory.cs
- WindowsButton.cs
- GeneralTransformGroup.cs
- OperatorExpressions.cs
- WebPartZoneCollection.cs
- RemotingException.cs
- TextBoxAutoCompleteSourceConverter.cs
- StaticDataManager.cs
- HierarchicalDataSourceControl.cs
- HttpListenerResponse.cs
- ActiveXContainer.cs
- XmlException.cs
- ContentFilePart.cs
- ByteFacetDescriptionElement.cs
- Model3DGroup.cs
- SqlNodeTypeOperators.cs
- OutputCacheProfileCollection.cs
- ObjectViewEntityCollectionData.cs
- ColorContextHelper.cs
- EntityContainerRelationshipSetEnd.cs
- UserPersonalizationStateInfo.cs
- Executor.cs
- FileRegion.cs
- MarkedHighlightComponent.cs
- CompositeKey.cs
- TimeManager.cs
- ColorComboBox.cs
- UIElement3D.cs
- BulletedListEventArgs.cs
- propertytag.cs
- EnumCodeDomSerializer.cs
- ConsoleKeyInfo.cs
- OpacityConverter.cs
- SchemaNames.cs
- KeyConverter.cs
- StandardToolWindows.cs
- ConfigurationElementProperty.cs
- ConnectionsZone.cs
- BamlResourceDeserializer.cs
- Stack.cs
- CompileXomlTask.cs
- ISCIIEncoding.cs
- CodeMemberProperty.cs
- DoneReceivingAsyncResult.cs
- CapacityStreamGeometryContext.cs
- EntryIndex.cs
- OpenTypeLayout.cs
- ConfigurationElementProperty.cs
- FunctionQuery.cs
- DSASignatureDeformatter.cs
- CodeExpressionRuleDeclaration.cs
- FrameworkReadOnlyPropertyMetadata.cs
- CrossSiteScriptingValidation.cs
- EditorPartChrome.cs
- PersonalizationStateQuery.cs
- Region.cs
- AspCompat.cs
- SoapReflectionImporter.cs
- PageCatalogPart.cs
- UIElementAutomationPeer.cs
- NameSpaceEvent.cs
- DocumentsTrace.cs
- EntityContainerAssociationSet.cs
- ProfileInfo.cs
- AlignmentYValidation.cs
- XsltArgumentList.cs
- GridViewColumn.cs
- WsatConfiguration.cs
- ApplicationDirectory.cs
- OLEDB_Util.cs
- SqlCacheDependency.cs
- FocusWithinProperty.cs
- PropertyValueUIItem.cs
- Html32TextWriter.cs
- ParameterElementCollection.cs
- BaseCodeDomTreeGenerator.cs