Esempio n. 1
0
 private void BindEvents(MVVMContextFluentAPI <ObjectExplorerViewModel> fluent)
 {
     fluent.EventToCommand <BeforeExpandEventArgs>(treeListObjExp, "BeforeExpand",
                                                   x => x.ObjectExplorer_OnBeforeExpand(null));
     fluent.WithEvent <TreeList, FocusedNodeChangedEventArgs>(treeListObjExp, "FocusedNodeChanged").SetBinding(
         x => x.FocusedNode,
         args => args.Node?.TreeList.GetDataRecordByNode(args.Node) as ObjectExplorerNode, (treeView, entity) =>
         treeView.FocusedNode = treeView.FindNode(
             x => x.Id == entity.Id));
 }
Esempio n. 2
0
        private void InitializeBindings()
        {
            // Init FluentAPI
            fluentAPIEmailList = mvvmContextEmailList.OfType <EmailListViewModel>();

            // Register Service
            mvvmContextEmailList.RegisterService(NotificationService.Create(toastNotificationsManager1));

            //Bind Event
            fluentAPIEmailList.BindCommand(btnNew, x => x.Create());

            SetDatasource();

            //Handle select row event
            fluentAPIEmailList.WithEvent <ColumnView, FocusedRowObjectChangedEventArgs>(emailGridView, "FocusedRowObjectChanged")
            .SetBinding(x => x.SelectedItem,
                        args => GetEmailItem(args),
                        (gView, entity) => gView.FocusedRowHandle = gView.FindRow(entity));

            fluentAPIEmailList.WithEvent <ColumnView, FocusedRowObjectChangedEventArgs>(deviceGridView, "FocusedRowObjectChanged")
            .SetBinding(x => x.SelectedDevice,
                        args => GetDeviceItem(args),
                        (gView, entity) => gView.FocusedRowHandle = gView.FindRow(entity));

            fluentAPIEmailList.SetTrigger(x => x.DisconectID, x =>
            {
                fluentAPIEmailList.ViewModel.StopException(deviceDataTable);
                gridControl1.Invoke(new Action(() =>
                {
                    deviceGridView.LayoutChanged();
                }));
            });

            //fluentAPI.WithEvent<RowCellClickEventArgs>(emailGridView, "RowCellClick")
            //   .EventToCommand(
            //       x => x.Edit(null), x => x.SelectedItem,
            //       args => (args.Clicks == 2) && (args.Button == System.Windows.Forms.MouseButtons.Left));

            // Init button
            AddMasterGridOptionButtons();
            AddDetailGridOptionButtons();
        }