Example #1
0
        private void LoadPins()
        {
            if (!TinkerData.HasShownWelcomeToTinker)
            {
                WelcomToTinkerGrid.Visibility = Visibility.Visible;
                ApplicationData.Current.LocalSettings.Values["WelcomeToTinker"] = true;
            }

            var devicePinActions = TinkerData.GetDevicePinActions(particleDevice.Id);

            ResourceLoader resourceLoader = new ResourceLoader();

            analogPinWriteCaption = resourceLoader.GetString("AnalogPinWriteCaption");

            pins = Pin.GetDevicePins(particleDevice);

            foreach (var pin in pins)
            {
                if (devicePinActions.ContainsKey(pin.TinkerId))
                {
                    pin.ConfiguredAction = devicePinActions[pin.TinkerId];
                }

                var pinButton = (PinButton)FindName(pin.TinkerId);
                pinButton.DataContext = pin;
                pinButton.Tapped     += PinButton_Tapped;
                pinButton.Holding    += PinButton_Holding;

                if (pin.PinType == PinType.B || pin.PinType == PinType.C)
                {
                    LowerPinGrid.Visibility = Visibility.Visible;
                }
            }

            var pinButtons = FlyoutHelper.FindTypeInContainer <PinButton>((DependencyObject)PinScrollViewer.Content);

            foreach (var pinButton in pinButtons)
            {
                if (pinButton.DataContext.GetType() != typeof(Pin))
                {
                    pinButton.Visibility = Visibility.Collapsed;
                }
            }
        }