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
- Effect.cs
- CodeTypeReferenceExpression.cs
- LassoHelper.cs
- AuthenticateEventArgs.cs
- ClientFactory.cs
- CalculatedColumn.cs
- SelectionRange.cs
- ToolStripArrowRenderEventArgs.cs
- ResourceExpressionBuilder.cs
- DataSourceViewSchemaConverter.cs
- FixedTextSelectionProcessor.cs
- Marshal.cs
- DynamicPropertyReader.cs
- Regex.cs
- HotCommands.cs
- HashMembershipCondition.cs
- DataColumnMappingCollection.cs
- XPathNodeIterator.cs
- LinearKeyFrames.cs
- PageVisual.cs
- SqlFunctionAttribute.cs
- ThreadExceptionDialog.cs
- Directory.cs
- IItemProperties.cs
- UnionCqlBlock.cs
- PerfCounterSection.cs
- HtmlElementEventArgs.cs
- DataGridDetailsPresenter.cs
- XmlWriterSettings.cs
- LinkArea.cs
- SQLByteStorage.cs
- UriScheme.cs
- XmlElementList.cs
- MatrixTransform3D.cs
- ConfigurationPermission.cs
- WindowsListViewGroup.cs
- TargetConverter.cs
- Keywords.cs
- WizardSideBarListControlItemEventArgs.cs
- EventLogTraceListener.cs
- RelationshipEnd.cs
- WebControlAdapter.cs
- PatternMatcher.cs
- InvalidCastException.cs
- MappedMetaModel.cs
- ImportCatalogPart.cs
- WmlCommandAdapter.cs
- AddressHeaderCollectionElement.cs
- Blend.cs
- SqlException.cs
- GridViewAutomationPeer.cs
- ActivityDesignerLayoutSerializers.cs
- QilVisitor.cs
- XmlSchemaSubstitutionGroup.cs
- InputLanguageManager.cs
- Accessible.cs
- ObjectDataSourceEventArgs.cs
- DefaultValueMapping.cs
- ObjectManager.cs
- ValueQuery.cs
- ColumnHeaderCollectionEditor.cs
- BlurBitmapEffect.cs
- DataTableMappingCollection.cs
- EventListener.cs
- RequestDescription.cs
- KeyInfo.cs
- VisualTarget.cs
- CodeCommentStatementCollection.cs
- XmlDocumentSerializer.cs
- ApplicationDirectory.cs
- FixedDocument.cs
- XMLUtil.cs
- OrderByBuilder.cs
- InvokePattern.cs
- SendMessageChannelCache.cs
- SelectionPattern.cs
- TypeDescriptionProvider.cs
- TransactionState.cs
- PresentationTraceSources.cs
- ProgressiveCrcCalculatingStream.cs
- WsiProfilesElement.cs
- ObjectListGeneralPage.cs
- RegexReplacement.cs
- SqlBuffer.cs
- TypedLocationWrapper.cs
- PtsPage.cs
- SchemaCollectionPreprocessor.cs
- WebPartConnectionsCloseVerb.cs
- querybuilder.cs
- ReadWriteObjectLock.cs
- SspiSafeHandles.cs
- PageContentAsyncResult.cs
- ProtectedConfigurationProviderCollection.cs
- StrokeRenderer.cs
- OneOfTypeConst.cs
- ExpanderAutomationPeer.cs
- PathData.cs
- RegisteredDisposeScript.cs
- _DomainName.cs
- SiteMap.cs