正确使用选取框进度条

时间:2013-11-14 11:31:13

标签: c# devexpress controls

我有来自devexpress的marquee progress bar control。当我想使用它时,我通常会这样做

myMarqueeBarControl.Stopped = false;

<Some code>

myMarqueeBarControl.Stopped = true;

我想知道是否有更好的方法来使用此控件(或通常是这样的控件)而不在start和stop语句之间包装一段代码。我不希望我的代码膨胀这些。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

如果类的接口不是您想要的,请将其包装到您自己的类中。

你可以编写一个小的IDisposable类来控制你的ctor并将状态设置回一个dispose。在这种情况下,您可以将代码包装到using语句中。

以下是一些示例包装器代码:

public class MarqueeWrapper : IDisposable
{
    private MarqueeControl _Source;

    public MarqueeWrapper(MarqueeControl source)
    {
        _Source = source;
        source.Stopped = false;
    }

    public void Dispose()
    {
        source.Stopped = true;
    }
}

以下是您可以使用它的方法:

using(var wrapper = new MarqueeWrapper(myMarqueeBarControl))
{
    // Some code...
}

这只是一个想法。也许你有另一种想法,但只需编写一个小的包装类并按照你的意愿使用它,让它为你做愚蠢的工作。