В этом примере я хочу добавить .loop({quantity},{sleepvalue})
к способуЕсть ли способ добавить метод расширения к лямбда?
Я получил его на работу с этим:
this.loop(count, 500,
()=>{
var image = Screenshots.getScreenshotOfDesktop();
pictureBox.load(image);
images.Add(image);
updateTrackBar();
});
с помощью этого метода расширения:
public static void loop(this Object _object, int count, int delay, MethodInvoker methodInvoker)
{
for(int i=0; i < count; i++)
{
methodInvoker();
_object.sleep(delay);
}
}
, что означает, что вызов синтаксис:
this.loop(15,500,() => {...code...});
но в идеале я хотел бы сделать что-то вроде:
()=> { ...code...}.loop(10,500);
, который не работает, если я не делаю это так:
new MethodInvoker(()=>{...code...}).loop(10,500);
, который будет работать с этой версией метода расширения:
public static void loop(this MethodInvoker methodInvoker, int count, int delay)
{
for(int i=0; i < count; i++)
{
methodInvoker();
Processes.Sleep(delay);
}
}
+1 для PascalCase. – SLaks