private void OpenChildWindow <TChildWindow>() where TChildWindow : Window
 {
     GUIDispMainWindow.Invoke(new Action(() =>
     {
         CKernelTerminal.OpenChildWindow <TChildWindow>();
     }));
 }
        public void OpenDetailedVM()
        {
            try
            {
                ViewModelDetailedVM vm = (ViewModelDetailedVM)
                                         CKernelTerminal.GetViewModelDispatcherInstance().GetViewModelChilInst <ViewModelDetailedVM>();

                // int ind = VMControlDatagrid.VM.SelectedIndex;


                CKernelTerminal.OpenChildWindow <DetailedVMWindow>();
                vm.BindGrid();

                /* CKernelTerminal kernTeminal = CKernelTerminal.GetKernelTerminalInstance();
                 *
                 *
                 *
                 *
                 * DetailedVMWindow win =
                 *  (DetailedVMWindow)kernTeminal.ViewModelDispatcher.OpenChildWindow<DetailedVMWindow>();
                 *
                 *
                 * win.Left = this.Left + 10;
                 * win.Top = this.Top + 10;
                 */
                //  win.Left = this.Left - 100;

                //    win.Left = 2800;
                //  win.Top = 400;

                // win.Show();
            }

            catch (Exception e)
            {
                Error("VMWindow.OpenDetailedVM", e);
            }
        }