Kurzor váltogatás

Nem tudom ti hogy vagytok vele, de ha mégis valami szinkron műveletet kell végrehajtani, ami nem túl gyakori WPF esetén, de ha mégis, én unom ezt a try..finally blokkozást. Ráadásul nekem zavarja a szememet is. Ez ugyan némi overheadet ad a dologhoz, de ezerszer áttekinthetőbb és jobb nekem így:

using System;
using System.Windows.Input;

namespace NetFx.Core.WPF.Utilities
{
    public sealed class CursorRegion : IDisposable
    {
        #region Constructors

        public CursorRegion(Cursor cursor)
        {
            Mouse.OverrideCursor = cursor;
        } 

        #endregion

        #region Properties

        public static CursorRegion Wait
        {
            get { return new CursorRegion(Cursors.Wait); }
        } 

        #endregion

        #region IDisposable

        public void Dispose()
        {
            Mouse.OverrideCursor = null;
        }

        #endregion
    }
}

Nem nagy szám, csak jobb életérzést nyújthat, meg több erőforrást eszik. De igaz a mondás, mindig az a finom, ami egészségtelen. 😀 Ennyi használni:

using (CursorRegion.Wait)
{
}

Hozzászólás