LoadedOrUnloadedOperation.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / MS / Internal / LoadedOrUnloadedOperation.cs / 1 / LoadedOrUnloadedOperation.cs

                            //------------------------------------------------------------------------------ 
//
// 
//    Copyright (C) Microsoft Corporation.  All rights reserved.
//  
//
// Description: 
//      A pending loaded or unloaded operation, to be run by the MediaContext. 
//
//----------------------------------------------------------------------------- 

using System;
using System.Diagnostics;           // Debug.Assert
 
using System.Windows;               // DependencyObject
using System.Windows.Threading;     // DispatcherOperationCallback 
using MS.Internal.PresentationCore; // [FriendAccessAllowed] 

namespace MS.Internal 
{
    [FriendAccessAllowed] // Built into Core, also used by Framework.
    internal class LoadedOrUnloadedOperation
    { 
        internal LoadedOrUnloadedOperation(
            DispatcherOperationCallback callback, 
            DependencyObject target) 
        {
            Debug.Assert(callback != null && target != null); 
            _callback = callback;
            _target = target;
        }
 
        internal void DoWork()
        { 
            if (!_cancelled) 
            {
                _callback(_target); 
            }
        }

        internal void Cancel() 
        {
            _cancelled = true; 
        } 

        private DispatcherOperationCallback _callback; 
        private DependencyObject _target;
        private bool _cancelled;
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------ 
//
// 
//    Copyright (C) Microsoft Corporation.  All rights reserved.
//  
//
// Description: 
//      A pending loaded or unloaded operation, to be run by the MediaContext. 
//
//----------------------------------------------------------------------------- 

using System;
using System.Diagnostics;           // Debug.Assert
 
using System.Windows;               // DependencyObject
using System.Windows.Threading;     // DispatcherOperationCallback 
using MS.Internal.PresentationCore; // [FriendAccessAllowed] 

namespace MS.Internal 
{
    [FriendAccessAllowed] // Built into Core, also used by Framework.
    internal class LoadedOrUnloadedOperation
    { 
        internal LoadedOrUnloadedOperation(
            DispatcherOperationCallback callback, 
            DependencyObject target) 
        {
            Debug.Assert(callback != null && target != null); 
            _callback = callback;
            _target = target;
        }
 
        internal void DoWork()
        { 
            if (!_cancelled) 
            {
                _callback(_target); 
            }
        }

        internal void Cancel() 
        {
            _cancelled = true; 
        } 

        private DispatcherOperationCallback _callback; 
        private DependencyObject _target;
        private bool _cancelled;
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK