コード例 #1
0
        private async void Temerature_ValueChanged(object sender, RangeBaseValueChangedEventArgs e)
        {
            Slider sl1 = sender as Slider;
            var    vm  = sl1.DataContext as ViewModels.AJViewBulb;

            if (vm == null)
            {
                return;
            }
            try
            {
                if (vm != null)
                {
                    foreach (DisplayLamp d in bulbs)
                    {
                        if (vm.ID.Equals(d.about.DeviceId) && vm.Name.Equals(d.about.DeviceName))
                        {
                            if (temperaturewait)
                            {
                                return;
                            }

                            temperaturewait = true;
                            uint temperature = (uint)e.NewValue;

                            if (d.SetSaturation < 99)
                            {// cant set temperature if saturation is 100%
                                LampStateSetColorTempResult res = (LampStateSetColorTempResult)await d.consumer.SetColorTempAsync(temperature);

                                setTimerIfPhilips(d);
                            }
                            else
                            {
                                var messageDialog = new MessageDialog("Cannot set Colour Temperature if Saturation is 100%");
                                await messageDialog.ShowAsync();

                                messageDialog = null;
                            }
                            temperaturewait = false;
                            return;
                        }
                    }
                }
            }
            catch (Exception ex) { }
        }
コード例 #2
0
 public IAsyncOperation <LampStateSetColorTempResult> SetColorTempAsync(AllJoynMessageInfo info, uint value)
 {
     return(Task.Run(() => LampStateSetColorTempResult.CreateSuccessResult()).AsAsyncOperation());
 }