コード例 #1
0
        public KeyControlViewModel(PluginInfo m)
        {
            this.m = m;
            this.m.PropertyChanged += (sender2, e2) =>
            {
                switch (e2.PropertyName)
                {
                case nameof(m.PluginHost):
                    ((BindableBase)this.m.PluginHost).PropertyChanged += (sender, e) =>
                    {
                        switch (e.PropertyName)
                        {
                        case nameof(m.PluginHost.CurrentTicket):
                            Visibility = m.PluginHost.CurrentTicket == this.m && m.TimeNumberInquirerStatus == TimeNumberInquirerStatus.Hidden ? Visibility.Visible : Visibility.Hidden;
                            break;
                        }
                    };
                    break;

                case nameof(m.KeyBaseModel):
                    KeyBaseViewModel.M = m.KeyBaseModel;
                    break;

                case nameof(m.TimeNumberInquirerStatus):
                    Visibility = m.PluginHost.CurrentTicket == this.m && m.TimeNumberInquirerStatus == TimeNumberInquirerStatus.Hidden ? Visibility.Visible : Visibility.Hidden;
                    break;
                }
            };

            TimeNumberInquirerVM = new TimeNumberInquirerViewModel(m);
            TimeNumberInquiringResultPresenterVM = new TimeNumberInquirerResultPresenterViewModel(m);
        }
コード例 #2
0
        public TimeNumberInquirerResultPresenter()
        {
            InitializeComponent();

            DataContextChanged += new DependencyPropertyChangedEventHandler((csender, ce) =>
            {
                vm = (TimeNumberInquirerResultPresenterViewModel)DataContext;

                vm.PropertyChanged += new PropertyChangedEventHandler((sender, e) =>
                {
                    switch (e.PropertyName)
                    {
                    case nameof(this.vm.CurrentTextBox):
                        TextBox textBox = FindName(this.vm.CurrentTextBox.ToString()) as TextBox;
                        if (textBox != null)
                        {
                            textBox.Focus();
                        }
                        break;
                    }
                });
            });
        }