CRIAR EVENTO
Olá a todos, bom gostaria da ajuda dos colegas para tirar uma dúvida, programo em VB a algum tempo e começei a programar em C# agora e preciso de ajuda.
Bom o lance é o seguinte, eu tenho uma aplicação, nesta aplicação eu criei um UserControl, e neste UserControl eu preciso criar um evento para que meu Window principal receba um valor.
No UserControl eu tenho 6 botões, o usuário irá clicar em 1 botão e preciso do retorno deste valor na janela principal, este valor é um int mesmo. Pois na janela principal eu vou acionar um evento de acordo com este retorno.
Obrigado a todos.
Bom o lance é o seguinte, eu tenho uma aplicação, nesta aplicação eu criei um UserControl, e neste UserControl eu preciso criar um evento para que meu Window principal receba um valor.
No UserControl eu tenho 6 botões, o usuário irá clicar em 1 botão e preciso do retorno deste valor na janela principal, este valor é um int mesmo. Pois na janela principal eu vou acionar um evento de acordo com este retorno.
Obrigado a todos.
Para acessar qualquer evento é só ir nas propriedades do objeto e ir em events
para retornar algum valor do seu usercontroll para a tela principal, passe a form principal como parâmetro e atribua este para uma variável do tipo FormPrincipal
Código do Usercontroll
ai vc pode chamar essa frm como se fosse sua form
para retornar algum valor do seu usercontroll para a tela principal, passe a form principal como parâmetro e atribua este para uma variável do tipo FormPrincipal
Código do Usercontroll
Citação:
Form1 frm;
public Usercontrol1(Form1 frm)
{
this.frm = frm;
}
ai vc pode chamar essa frm como se fosse sua form
Tente o seguinte:
No UserControl, crie um Delegate, um Event e uma variável de retorno.
Em seguida, no evento clique do botão, faça uma referência ao evento criado e atribua o valor do tipo int para a variável.
Por fim, no form, é só escrever seu código no evento criado do UserControl.
Qualquer dúvida é só postar!
No UserControl, crie um Delegate, um Event e uma variável de retorno.
public delegate void MeuDelegateEventHandler(object sender, EventArgs e);
public event MeuDelegateEventHandler MeuEvento;
public int RET = 0;
Em seguida, no evento clique do botão, faça uma referência ao evento criado e atribua o valor do tipo int para a variável.
private void button1_Click(object sender, EventArgs e)
{
if (MeuEvento != null)
{
RET = 1;
MeuEvento(this, e);
}
RET = 1;
}
private void button2_Click(object sender, EventArgs e)
{
if (MeuEvento != null)
{
RET = 2;
MeuEvento(this, e);
}
RET = 2;
}
Por fim, no form, é só escrever seu código no evento criado do UserControl.
private void userControl11_MeuEvento(object sender, EventArgs e)
{
try
{
MessageBox.Show(userControl11.RET.ToString());
}
catch (Exception)
{
throw;
}
}
Qualquer dúvida é só postar!
Faça seu login para responder