comment utiliser methodInvoker en c++ cli?
Bonjour, j'ai ce code en c# qui est correcte
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| private void HandleFarmStateChanged(object sender, ValueChangedEventArgs<CFarm.FarmState> e)
{
if (control.InvokeRequired)
{
control.Invoke(new MethodInvoker(delegate
{
HandleFarmStateChanged(sender, e);
}));
return;
}
//FarmStateStatusLabel.Text = e.NewValue.ToString();
Console.WriteLine(e.NewValue.ToString());
Console.WriteLine(" ");
} |
mais je le veux en c++ cli et c'est ce que j'ai essayé
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| void GetNotifications::HandleFarmStateChanged(Object ^sender, ValueChangedEventArgs<CFarm::FarmState> ^e)
{
if (control->InvokeRequired)
{
control->Invoke(
gcnew System::Windows::Forms::MethodInvoker(
this,
&GetNotifications::HandleFarmStateChanged
)
);
return;
}
Console::WriteLine(e->NewValue.ToString());
Console::WriteLine(" ");
} |
et pourtant j'ai toujour cette erreur
"Error 1 error C3352: 'void GetNotifications::HandleFarmStateChanged(System::Object ^,BaseLibCS::ValueChangedEventArgs<T> ^)' : the specified function does not match the delegate type 'void (void)'"
Merci d'avance
Modifier