mvvm light - 消息(VS“tab friendly”类)

时间:2011-05-16 11:07:57

标签: c# mvvm-light

我的所有appMessages都有一个msgClass看起来像这样(使用mvvm light messenger)

public static class AppMessages
{
    enum MessageTypes
    {
        changeStateMsg,
        inputMsg
    }

    public class MsgBase
    {
        public static void unRegister(object recipient)
        {
            Messenger.Default.Unregister<bool>(recipient);
        }
    }

    public static class changeState : MsgBase
    {
        public static void Send(bool stateChange)
        {
            Messenger.Default.Send<bool>(stateChange, MessageTypes.changeStateMsg);
        }

        public static void Register(object recipient, Action<bool> action)
        {
            Messenger.Default.Register<bool>(recipient, MessageTypes.changeStateMsg, action);
        }
    }

    public static class inputMsg : MsgBase
    {
        public static void Send(string key)
        {
            Messenger.Default.Send<string>(key, MessageTypes.inputMsg);
        }

        public static void Register(object recipient, Action<string> action)
        {
            Messenger.Default.Register<string>(recipient, MessageTypes.inputMsg, action);
        }
    }
}

只是徘徊,如果有可能使它更多VS标签友好我注册它像这样:

AppMessages.changeState.Register(this, onStateChange );

我的问题是如何让它自动生成onStateChange方法(rightClicking只能让我能够创建属性/字段)

所以它是一个“懒惰的问题”我知道我应该写这个:

 public void onStateChange(bool b)
    { 
    }

但是,如果你们中的任何人知道如何自动生成它?我应该高兴:)

/欢呼

2 个答案:

答案 0 :(得分:0)

我认为这是VS的限制。另一方面,Resharper能够做到这一点。

答案 1 :(得分:0)

这可以通过使用ReSharper来实现,但您必须购买许可才能使用它。使用它近3年后,我强烈推荐给你。 (您可以下载试用版,看看它是如何工作的)