Ejemplo n.º 1
0
        public PlayerView()
        {
            this.Players = new ObservableCollection <PlayerViewModel>();

            this.InitializeComponent();
            this.DataContext = this;

            this.Loaded += delegate
            {
                if (!this.registered)
                {
                    for (DependencyObject obj = this; obj != null; obj = LogicalTreeHelper.GetParent(obj))
                    {
                        MainWindow window = obj as MainWindow;
                        if (window != null)
                        {
                            window.RegisterForSeasonChanges(
                                delegate(FanastySeason season)
                            {
                                var players = new PlayerLoader(season);

                                this.Dispatcher.BeginInvoke(
                                    new Action <IEnumerable <PlayerViewModel> >(this.Refresh),
                                    players.GetViewModels());
                            });
                            this.registered = true;
                            break;
                        }
                    }
                }
            };
        }