public void Init(ScoreHandCP mod) { _tempMod = mod; _cardList = _tempMod.CardList; _cardList.CollectionChanged += CollectionChanged; _thisGrid = new Grid(); Text = _tempMod.Text; // i think Grid parentGrid = new Grid(); parentGrid.Children.Add(ThisDraw); parentGrid.Children.Add(_thisGrid); var thisRect = ThisFrame.GetControlArea(); SetUpMarginsOnParentControl(_thisGrid, thisRect); _thisGrid.Margin = new Thickness(_thisGrid.Margin.Left, _thisGrid.Margin.Top + 8, _thisGrid.Margin.Right, _thisGrid.Margin.Bottom); // not sure why did not work well this time (?) AddAutoColumns(_thisGrid, 3); AddAutoRows(_thisGrid, 2); HorizontalAlignment = HorizontalAlignment.Stretch; Content = parentGrid; if (_cardList.Count > 0) { PopulateList(); } }
public CribbagePatienceMainViewModel(IEventAggregator aggregator, CommandContainer commandContainer, IGamePackageResolver resolver ) { _aggregator = aggregator; CommandContainer = commandContainer; CommandContainer.ExecutingChanged += CommandContainer_ExecutingChanged; //hopefully no problem (?) DeckPile = resolver.ReplaceObject <DeckObservablePile <CribbageCard> >(); DeckPile.DeckClickedAsync += DeckPile_DeckClickedAsync; DeckPile.NeverAutoDisable = false; DeckPile.SendEnableProcesses(this, () => { return(false); }); Hand1 = new HandObservable <CribbageCard>(commandContainer); Hand1.Visible = false; //has to be proven true. Hand1.Maximum = 6; Hand1.AutoSelect = HandObservable <CribbageCard> .EnumAutoType.SelectAsMany; _mainGame = resolver.ReplaceObject <CribbagePatienceMainGameClass>(); //hopefully this works. means you have to really rethink. _aggregator.Subscribe(this); _mainGame._saveRoot.HandScores = new CustomBasicList <ScoreHandCP>(); 3.Times(x => { var tempHand = new ScoreHandCP(); tempHand.HandCategory = (EnumHandCategory)x; _mainGame._saveRoot.HandScores.Add(tempHand); }); StartPile = new PileObservable <CribbageCard>(_aggregator, CommandContainer); StartPile.Text = "Start Card"; StartPile.CurrentOnly = true; StartPile.SendEnableProcesses(this, () => false); Scores = new ScoreSummaryCP(); TempCrib = new HandObservable <CribbageCard>(CommandContainer); TempCrib.Visible = false; TempCrib.Text = "Crib So Far"; TempCrib.Maximum = 4; }