c# - 在多个页面上重复使用 WPF 方法 - 我应该使用静态类还是单例?

标签 c#

我正在阅读单例和静态类之间的区别,但我发现唯一不同的是单例给你状态,可以实现接口(interface)和派生,而静态类没有这些东西。我不需要(可能不需要)实现接口(interface)或从类派生,所以我认为静态类是正确的做法。但我想知道更多关于这个对象状态与静态类无状态的东西。你会如何定义对象的状态?状态是否可用于 1 个 WPF 页面中的事件?这可能是一个愚蠢的问题,但我从不遵循理论,我只是编写代码来工作:) 这就是我现在学习它们的原因。

回到主题。 我有 1 种方法,动画标签,用于不同 WPF 页面的不同标签:

    private void SetUpAnimation()
    {
        DoubleAnimation doubleAnimation = new DoubleAnimation();
        doubleAnimation.From = -LabelNameSong.ActualWidth;
        doubleAnimation.To = CanMain.ActualWidth;
        doubleAnimation.RepeatBehavior = RepeatBehavior.Forever;
        doubleAnimation.Duration = new Duration(TimeSpan.Parse("0:0:10"));
        LabelNameSong.BeginAnimation(Canvas.RightProperty, doubleAnimation);
    }

因为我不想在每个页面上复制粘贴它,所以我想创建辅助类、静态类或实用程序类(与我理解的相同)来拥有这个方法,我会在任何地方调用它我需要(当然是传递正确的标签作为参数)。

感谢一些建议。谢谢。

最佳答案

我会选择静态,因为不同标签的动画之间没有交互。

关于c# - 在多个页面上重复使用 WPF 方法 - 我应该使用静态类还是单例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18434239/

相关文章:

c# - Razor 智能感知错误 : Feature 'extension method' cannot be used because it is not part of the ISO-2 C# language specification

c# - 如何判断tcp是否连接?

c# - 为 .Net 平台编写 DSL

c# - 这种不良做法/反模式的名称是什么?

c# - 在 Visual Studio 中自动创建处理程序签名

c# - ASP Core HttpClientFactory 模式使用客户端证书

c# - 在 C# 中使用 RegEx 验证 float

c# - 一个数据库具有多个上下文的 EF Initializer

c# - 页眉和页脚布局

c# - 如何将 "IStorageItem"的实现传递给 DataPackage.SetStorageItems(items) 并且不在 UWP 上引发 InvalidCastException?