• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

pakenuh

Object sender, EventArgs e...

6 mensagens neste tópico

Boas pessoal. Sou um iniciante em programação ASP.Net e enverdei pelo C#. Normalmente quando chamo um método que esteja no código costumo usar as seguintes opções: object sender, EventArgs e .

Eu sei que isto são referências ao objecto que acciona o método mas quando invoco o tal objecto sender as opções que me dá são muito restritas nem têm nada a ver com o objecto em si.

Se alguém me puder explicar o porquê de se usar estes parâmetros agradecia.

Boas programações.

ps:para programar uso o visual studio express 2008.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Como object é a classe base de todas as classes significa que um objecto de qualquer classe pode ser convertido para object. Isto evita que tenha que existir um método com um parâmetro para cada tipo.

Se não souberes o tipo que virá como object metes um breakpoint nesse método e consultas o tipo real

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

podes sempre converter o sender para outro objecto qualquer...

imagina que sabes que aquele sender recebe sempre um botao...

entao fazes isto

Button botao = new Button();

botao = (Button)sender;

ai ja podes aceder ao metodos todos do botao

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Button botao = new Button();

botao = (Button)sender;

ou mesmo

Button botao = (Button)sender;

:(

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

No seguimento do que disse o vitortomaz, o new Button() não faz lá nada, só prejudica o desempenho do programa, porque vai instanciar um objecto (no caso, um botão) que nunca irá ser utilizado, dado que a referência se perde logo a seguir.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora