Ejemplo n.º 1
0
        private void InitializeCommand()
        {
            CommandBinding cbModelInit      = new CommandBinding(cmdModelInit, cbModelInit_Executed, (sender, e) => { e.CanExecute = true; e.Handled = true; });
            CommandBinding cbSelectPanels   = new CommandBinding(cmdSelectPanels, cbSelectPanels_Executed, (sender, e) => { e.CanExecute = true; e.Handled = true; });
            CommandBinding cbSelectMullions = new CommandBinding(cmdSelectMullions, cbSelectMullions_Executed, (sender, e) => { e.CanExecute = true; e.Handled = true; });
            CommandBinding cbZonedPnM       = new CommandBinding(cmdZonedPnM, cbZonedPnM_Executed, (sender, e) => { e.CanExecute = true; e.Handled = true; });

            CommandBinding cbPanelResolve = new CommandBinding(cmdPanelResolve,
                                                               (sender, e) =>
            {
                foreach (var zn in Global.DocContent.ZoneList)
                {
                    ZoneHelper.FnResolveSimpleZone(uidoc, zn, ref listInformation, ref txtProcessInfo);
                }
            },
                                                               (sender, e) => { e.CanExecute = true; e.Handled = true; });


            CommandBinding cbNavZone = new CommandBinding(cmdNavZone,
                                                          (sender, e) =>
            {
                datagridPanels.ItemsSource = null;
                datagridPanels.ItemsSource = e.Parameter as List <CurtainPanelInfo>;
                expDataGridPanels.Header   = $"分區[{((navZone.SelectedItem as ListBoxItem).Tag as ZoneInfoBase).ZoneCode}]幕墻嵌板數據列表";
            },
                                                          (sender, e) => { e.CanExecute = true; e.Handled = true; });

            CommandBinding cbLoadData = new CommandBinding(cmdLoadData,
                                                           (sender, e) =>
            {
                Microsoft.Win32.OpenFileDialog ofd = new Microsoft.Win32.OpenFileDialog();
                ofd.InitialDirectory = System.IO.Path.GetDirectoryName(Global.DataFile);
                ofd.DefaultExt       = "*.data";
                ofd.Filter           = "Data Files(*.data)|*.data|Data Backup Files(*.bak)|*.bak|All(*.*)|*.*";
                if (ofd.ShowDialog() == true)
                {
                    if (MessageBox.Show($"確認加載新數據文件 {ofd.FileName}?\n\n現有数据将被新數據覆蓋,且不可恢復,但不会影响模型文件。單擊確認繼續,取消則不會有任何操作。", "加載新數據...",
                                        MessageBoxButton.OKCancel,
                                        MessageBoxImage.Question,
                                        MessageBoxResult.OK) == MessageBoxResult.OK)
                    {
                        ZoneHelper.FnContentDeserialize(ofd.FileName);
                        listInformation.SelectedIndex = listInformation.Items.Add($"{DateTime.Now:HH:mm:ss} - 加載新數據文件{ofd.FileName}.");
                    }