Я стал мучительно осознавать, как часто нужно писать следующий шаблон кода в коде GUI, управляемого событиями, где
private void DoGUISwitch() {
// cruisin for a bruisin' through exception city
object1.Visible = true;
object2.Visible = false;
}
будет выглядеть так:
private void DoGUISwitch() {
if (object1.InvokeRequired) {
object1.Invoke(new MethodInvoker(() => { DoGUISwitch(); }));
} else {
object1.Visible = true;
object2.Visible = false;
}
}
Это неуклюжий шаблон в C #, как для запоминания, так и для ввода. Кто-нибудь придумал какой-нибудь ярлык или конструкцию, которая до некоторой степени автоматизирует это? Было бы здорово, если бы был способ прикрепить функцию к объектам, которая выполняет эту проверку, без необходимости выполнять всю эту дополнительную работу, например, object1.InvokeIfNecessary.visible = true
ярлык типа.
В предыдущих ответах обсуждалась непрактичность простого вызова Invoke () каждый раз, и даже тогда синтаксис Invoke () неэффективен и по- прежнему неудобен в обращении.
Итак, кто-нибудь разобрался в каких-либо сочетаниях клавиш?
object1.InvokeIfNecessary.Visible = true
линией; Проверьте мой обновленный ответ и дайте мне знать, что вы думаете.