Пример #1
0
        private WeatherTransferObject GetJsonData(string URL)
        {
            if (URL == null)
            {
                return(null);
            }


            WeatherTransferObject weatherData = new WeatherTransferObject();
            string jsonData = "";

            using (WebClient client = new WebClient())
            {
                try
                {
                    jsonData = client.DownloadString(URL);

                    weatherData = JsonConvert.DeserializeObject <WeatherTransferObject>(jsonData);

                    // set icon
                    instance.SetIcon(weatherData.weather[0].icon);

                    // set all Data
                    instance.UpdateWeatherData(weatherData);
                }
                catch (Exception e)
                {
                    MessageBox.Show("Error: " + e.Message);

                    throw;
                }
            }

            return(weatherData);
        }
Пример #2
0
        public GetWeatherForm()
        {
            if (instance != null)
            {
                return;
            }

            instance = this;   // this is my fake singleton used in other files to work with the UI elements


            InitializeComponent();


            // initialize jsonObject
            jsonObject = new WeatherTransferObject();

            // set default data
            txtboxCountry.Text = "Canada";
            txtboxCity.Text    = "Halifax";
        }
Пример #3
0
        public void UpdateWeatherData(WeatherTransferObject dataSet)
        {
            // populate all recieved data to the UI

            lblSetCity.Text = dataSet.name;

            lblSetCountry.Text = dataSet.sys.country.ToString();

            lblCurrentTemp.Text = dataSet.main.temp.ToString();

            lblHumidity.Text = dataSet.main.humidity.ToString();

            lblPressure.Text = dataSet.main.pressure.ToString();

            lblWindSpeed.Text = (dataSet.wind.speed.ToString() + " (mps)"); // meters per second

            lblLong.Text = dataSet.coord.lon.ToString();
            lblLat.Text  = dataSet.coord.lat.ToString();

            lblDesc.Text = dataSet.weather[0].description.ToString();
        }