Articles of delegates de

Reflexão – Adicionar um Delegado à lista de invocação de outro Delegado

Eu estou tentando append um delegado a uma lista de invocação de um delegado diferente. Por isso eu estou conseguindo uma espécie de gancho em events existentes. Eu preciso ligar algo que é executado após cada evento que é chamado. O exemplo a seguir funciona desde que o Delegado exposto pelo tipo e a Ação […]

Incompatibilidade do compilador C # com construtores delegates

Com base na pergunta a seguir , encontrei um comportamento estranho do compilador c #. O seguinte é válido C #: static void K() {} static void Main() { var k = new Action(new Action(new Action(K)))); } O que eu acho estranho é o compilador “desconstruindo” o delegado passado. A saída do ILSpy é a […]

Como posso escrever um evento que acontece quando o mouse rola na checkbox de texto?

Eu quero mudar o número do TextBox quando The Mouse Scrolls. Eu tenho um Scroll TextBox Mas eu não quero usar isso. Existe algum evento relacionado a isso? Devo escrever um evento TextBox? Se sim, como posso escrever um evento de checkbox de texto que acontece quando o mouse rola?

Evitar assinaturas de events duplicados em c #

Como você sugeriria a melhor maneira de evitar inscrições de events duplicados? Se esta linha de código for executada em dois lugares, o evento será executado duas vezes. Estou tentando evitar que events de terceiros sejam inscritos duas vezes. theOBject.TheEvent += RunMyCode; No meu setter delegado, posso efetivamente executar isso … theOBject.TheEvent -= RunMyCode; theOBject.TheEvent […]

Ponteiros de function em c #

Suponho que, de alguma forma, (ou ambos) Delegate ou MethodInfo qualificam para este título. No entanto, nenhum deles fornece a gentileza sintática que estou procurando. Então, em suma, existe alguma maneira que eu possa escrever o seguinte: FunctionPointer foo = // whatever, create the function pointer using mechanisms foo(); Eu não posso usar um delegado […]

Posso obter a assinatura de um delegado C # pelo seu tipo?

Existe uma maneira simples de usar a reflection para chegar à lista de parâmetros para um delegado, se você tiver suas informações de tipo? Por exemplo, se eu declarar um tipo de delegado da seguinte forma delegate double FooDelegate (string param, bool condition); e depois obter as informações de tipo para esse tipo de delegado […]

Em C #, por que não posso testar se um manipulador de events é nulo em qualquer lugar fora da class definida?

Tenho certeza de que estou apenas não entendendo algo fundamental sobre events e / ou delegates em C #, mas por que não posso fazer os testes booleanos neste exemplo de código: public class UseSomeEventBase { public delegate void SomeEventHandler(object sender, EventArgs e); public event SomeEventHandler SomeEvent; protected void OnSomeEvent(EventArgs e) { // CANONICAL WAY […]

Obtendo um delegado de methodinfo

Eu tenho uma lista suspensa que é preenchida inspecionando os methods de uma class e incluindo aqueles que correspondem a uma assinatura específica. O problema está em tirar o item selecionado da lista e obter o delegado para chamar esse método na class. O primeiro método funciona, mas não consigo descobrir parte do segundo. Por […]

Escrevendo um evento personalizado global em c #

Eu tenho um winform winform1 e 2 controles de usuário control1 e control2 neste formulário Agora eu quero definir um evento personalizado , que é gerado / triggersdo no controle1 e recebido no controle2. O evento deve ser global e não diretamente definido no controle1. control2 não deve saber sobre a existência de controle1. O […]

Delegado para uma ação

Eu estou tentando criar um delegado de um método estático que leva um argumento ref. Por favor, não pergunte por que eu estou fazendo uma coisa do tipo cockamamie. Tudo faz parte de aprender como .Net, C # e trabalho de reflection e como otimizá-lo. Meu código é: public struct DataRow { private double t; […]