Oder auch den OnClick Event vom Button1 direkt mit ControlChange verdrahte, und dann erst später die Verzweigung zu TViewModel.Button1Click mache, und zwar ungefähr so:
ich führ dein Beispiel mal fort..
Delphi-Quellcode:
procedure TMainFormView.DoSaveToModel( Sender : TObject );
begin
// Binding View => Model
ViewModel.Value := CheckBox1.Checked;
if (Sender as TComponent).Name = 'Button1' then ViewModel.Button1Click;
if (Sender as TComponent).Name = 'Button2' then ViewModel.Button2Click;
if (Sender as TComponent).Name = 'Button3' then ViewModel.Button3Click;
if (Sender as TComponent).Name = 'Button4' then ViewModel.Button4Click;
if (Sender as TComponent).Name = 'Button5' then ViewModel.Button5Click;
if (Sender as TComponent).Name = 'Button6' then ViewModel.Button6Click;
....
if (Sender as TComponent).Name = 'Buttonn' then ViewModel.ButtonnClick;
end;
Das willst Du machen? Echt?
DoSaveToModel hat eine Aufgabe: Daten von der
Gui in die Objekte zu speichern, aber sicher nicht zu schauen ob der Sender einen bestimmten Namen trägt um dann irgend was zu tun...
Ist das wichtig? Es ist doch dein code
ne, ist er nicht. Das ist der Code von dem Typ der nach ihm den Code warten muss. Wäre schön, wenn man immer wieder mal daran denkt...