public AttributeEditor() { InitializeComponent(); // Setup ViewModel _vm = new AttributeEditorViewModel(new TestableMetadataHelper()); _vm.OnRequestConnection += (sender, args) => { var arg = new RequestConnectionEventArgs { ActionName = "Load", Control = this }; RaiseRequestConnectionEvent(arg); }; _vm.OnEntitiesListChanged += (sender, args) => { cmbEntities.Items.Clear(); cmbEntities.DisplayMember = "DisplayName"; cmbEntities.ValueMember = "SchemaName"; cmbEntities.Items.AddRange(_vm.Entities.ToArray()); }; _vm.OnWorkingStateChanged += (sender, args) => { ManageWorkingState(_vm.WorkingState); }; _vm.OnGetInformationPanel += (sender, args) => { args.Panel = InformationPanel.GetInformationPanel(this, args.Message, args.Width, args.Height); }; _vm.OnShowMessageBox += (sender, args) => { MessageBox.Show(this, args.Message, args.Caption, args.Buttons, args.Icon); }; }