elegados @anonymous em C #

Não posso ser o único cansado de definir e nomear um delegado para apenas uma chamada para algo que requer um delegado. Por exemplo, eu queria chamar .Refresh () em um formulário de possivelmente outros threads, então escrevi este código:

private void RefreshForm()
{
    if (InvokeRequired)
        Invoke(new InvokeDelegate(Refresh));
    else
        Refresh();
}

Eu nem tenho certeza que preciso, apenas li o suficiente para ter medo de que não funcione mais tard
InvokeDelegate é realmente declarado em outro arquivo, mas eurealment precisa de um delegado inteiro dedicado apenas para isso? não existem delegados genéricos?
Quero dizer, por exemplo, há uma classe Pen, mas também existem caneta caneta de escolha para que você não precise refazer a coisa toda. Não é o mesmo, mas espero que você entenda o que quero dizer.

questionAnswers(12)

yourAnswerToTheQuestion