상속: INotifyPropertyChanged
예제 #1
0
        public bool Setup( IPluginSetupInfo info )
        {
            _viewModel = new TemplateEditorViewModel();
            _viewModel.TemplateValidated += ( o, e ) =>
            {
                string generatedText = _viewModel.Template.GenerateFormatedString();
                //Console.WriteLine( generatedText );
                _editor.WindowState = System.Windows.WindowState.Minimized;
                SendFormatedTemplate();
                _editor.Close();
            };
            _viewModel.Canceled += ( o, e ) =>
            {
                _editor.Close();
            };

            return true;
        }
        public TemplateEditor(TemplateEditorViewModel model)
        {
            _model = model;
            InitializeComponent();
            RenderTemplate();
            DataContext = model;

            this.MouseDown += (o, e) =>
            {
                if (e.ChangedButton == MouseButton.Left)
                    this.DragMove();
            };

            _model.Cancel.PropertyChanged += ( o, e ) => { if(_model.Cancel.IsHighlighted) ((Button)FindName( "cancel" )).Focus(); };
            _model.ValidateTemplate.PropertyChanged += ( o, e ) => { if( _model.ValidateTemplate.IsHighlighted ) ((Button)FindName( "ok" )).Focus(); };
            KeyDown += _model.Window_KeyDown;

            this.ContentRendered += ( o, e ) => FocusOnElement( _bindings.Keys.FirstOrDefault() );
        }