Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Делегаты


Автор: uranpro 3.2.2010, 19:32
Добрый день!
мне надоело во всех проектах писать один и тот же код для синхронизации:
Код

        public delegate void AddMessageAsync(string msg);

        public void AddMessage(string msg)
        {
            if (eProtocol.InvokeRequired)
                eProtocol.Invoke(new AddMessageAsync(AddMessage), msg);
            else
                eProtocol.Items.Add(DateTime.Now.ToString() + ": " + msg);
        }

хочу сделать что-то типа этого
Код

    public static class AutoInvoke
    {

        public delegate void MultiDelegate(object[] Args);

        public static void Invoke(System.Windows.Forms.Control Control, Delegate method, object[] Args)
        {
            if (Control.InvokeRequired)
                Control.Invoke(new MultiDelegate(method), Args);
            else
                method(Args);
        }

    }

это реально ?

Автор: Partizan 5.2.2010, 13:01
uranpro, да.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)