((Border) ContentPanel.Children [position]). Child). Tag): 16;}// алгоритм підбору елементів для зберігання void Scrambles () {var count = 0; while (count < ; 25) {var a = _rnd.Next (1, 17); var b = _rnd.Next (1, 17); if (a == b) continue; var stack1 = FindStackPanelByTagId (a); var stack2 = FindStackPanelByTagId ( b); if (a == 16) {var image2 = stack2.Child; stack2.Child = null; stack1.Child = image2;} else if (b == 16) {var image1 = stack1.Child; stack1.Child = null; stack2.Child = image1;} else {var image1 = stack1.Child; var image2 = stack2.Child; stack1.Child = null; stack2.Child = null; stack1.Child = image2; stack2.Child = image1; } count + +;}}// перевірка правильності void CheckBoard () {var index = 1; for (var i = 15; i> 0; i -) {if (FindItemValueByPosition (i)! = index) return; index + +; } _timer.Stop (); DisplayToastWithImage (); btnShare.Visibility = Windows.UI.Xaml.Visibility.Visible;}// перевірка на можливість вирішення bool CheckIfSolvable () {var n = 0; for (var i = 15; i > 0; i -) {if (! (ContentPanel.Children [i] is StackPanel)) continue; var num1 = FindItemValueByPosition (i); var num2 = FindItemValueByPosition (i - 1); if (num1> num2) {n + +;}} var emptyPos = FindEmptyItemPosition (); return n% 2 == (emptyPos + emptyPos/4)% 2? true: false;}//////Move Item From One SpackPanel to Another. ////// Gets the Image item you want to move /// Destination StackPanel < ;/ param> void MoveItem (TextBlock item, Border targetPanel) {foreach (var stackPanel in ContentPanel.Children.OfType (). Where (stackPanel => stackPanel.Child! = null && ((TextBlock) stackPanel.Child). Text == ((TextBlock) item). Text)) {stackPanel.Child = null;} targetPanel.Child = item;}// повертає позиції елементів, якщо вони знаходяться по краях bool IsBorderSwich (int a, int b) {return _bordersNums.Contains (a) && _bordersNums.Contains (b);}// перевірка на можливість пересування Border CanMove (UIElement itemToMove) {var val = ((TextBlock) itemToMove). Text; var count = ContentPanel.Children.Count; for (var i = 0; i -1 && ContentPanel.Children [i - 1]! = null && ((Border) ContentPanel . Children [i - 1]). Child == null) return ((Border) ContentPanel.Children [i - 1]); if (i + 4 <= 15 && ContentPanel.Children [i + 4] ! = null && ((Border) ContentPanel.Children [i + 4]). Child == null) return ((Border) ContentPanel.Children [i + 4]); if (i - 4> -1 && ContentPanel.Children [i - 4]! = null && ((Border) ContentPanel.Children [i - 4]). ...