Example #1
0
        /// <summary>
        /// Set device Time Zone and Synchronization Server via device twin.
        /// </summary>
        private async void SetTimeInfoButton_ClickAsync(object sender, RoutedEventArgs e)
        {
            TimeZoneData selectedTimeZoneData = (TimeZoneData)TimeZoneCombobox.SelectedItem;

            if (selectedTimeZoneData == null)
            {
                _mainPage.ShowDialogAsync("Invaid Input", "Time Zone value is not selected");
                return;
            }

            TimeSettingsDataContract.DesiredProperties desiredProperties = new TimeSettingsDataContract.DesiredProperties();
            desiredProperties.ntpServer    = NtpServerCombobox.SelectedValue.ToString();
            desiredProperties.timeZoneBias = selectedTimeZoneData.Bias;

            desiredProperties.timeZoneStandardBias      = selectedTimeZoneData.StandardBias;
            desiredProperties.timeZoneStandardDate      = selectedTimeZoneData.StandardDate;
            desiredProperties.timeZoneStandardName      = selectedTimeZoneData.StandardName;
            desiredProperties.timeZoneStandardDayOfWeek = selectedTimeZoneData.StandardDayOfWeek;

            desiredProperties.timeZoneDaylightBias      = selectedTimeZoneData.DaylightBias;
            desiredProperties.timeZoneDaylightDate      = selectedTimeZoneData.DaylightDate;
            desiredProperties.timeZoneDaylightName      = selectedTimeZoneData.DaylightName;
            desiredProperties.timeZoneDaylightDayOfWeek = selectedTimeZoneData.DaylightDayOfWeek;

            desiredProperties.timeZoneKeyName             = selectedTimeZoneData.Id;
            desiredProperties.dynamicDaylightTimeDisabled = selectedTimeZoneData.DisableDynamicDaylightTime;

            string refreshingValue = "\"refreshing\"";
            string finalValue      = "{" + desiredProperties.ToJsonString() + "}";
            await _mainPage.UpdateTwinData(refreshingValue, finalValue);
        }
        public string ToJson()
        {
            TimeZoneData timeZoneData = (TimeZoneData)DisplayNames.SelectedItem;

            TimeSettingsDataContract.DesiredProperties desiredProperties = new TimeSettingsDataContract.DesiredProperties();

            desiredProperties.ntpServer = ((ComboBoxItem)DesiredNtpServer.SelectedItem).Content.ToString();

            desiredProperties.timeZoneBias = timeZoneData.Bias;

            desiredProperties.timeZoneStandardBias      = timeZoneData.StandardBias;
            desiredProperties.timeZoneStandardDate      = timeZoneData.StandardDate;
            desiredProperties.timeZoneStandardName      = timeZoneData.StandardName;
            desiredProperties.timeZoneStandardDayOfWeek = timeZoneData.StandardDayOfWeek;

            desiredProperties.timeZoneDaylightBias      = timeZoneData.DaylightBias;
            desiredProperties.timeZoneDaylightDate      = timeZoneData.DaylightDate;
            desiredProperties.timeZoneDaylightName      = timeZoneData.DaylightName;
            desiredProperties.timeZoneDaylightDayOfWeek = timeZoneData.DaylightDayOfWeek;

            desiredProperties.timeZoneKeyName             = timeZoneData.Id;
            desiredProperties.dynamicDaylightTimeDisabled = false;

            return(desiredProperties.ToJsonString());
        }