예제 #1
0
        private void miastoCB_SelectedIndexChanged(object sender, EventArgs e)
        {
            Pogodynka   pogodynka = new Pogodynka();
            Aplikacja   aplikacja = new Aplikacja(pogodynka);
            XmlDocument xmlPogoda = new XmlDocument();

            pogodynka.dodajObserwatora(aplikacja);

            pogodynka.odczytajPogode(miastoCB.SelectedItem.ToString());
            xmlPogoda = aplikacja.xmlPogoda;

            pogodaTC.TabPages.Clear();

            XmlNodeList xmlNodeList = xmlPogoda.GetElementsByTagName("forecastday");
            int         i           = 0;

            foreach (XmlNode xmlNode in xmlNodeList)
            {
                pogodaTC.TabPages.Add(xmlNode.SelectSingleNode("date/weekday").InnerText);

                Label data = new Label();
                data.Text = xmlNode.SelectSingleNode("date/day").InnerText + "." +
                            xmlNode.SelectSingleNode("date/month").InnerText + "." +
                            xmlNode.SelectSingleNode("date/year").InnerText;
                pogodaTC.TabPages[i].Controls.Add(data);
                pogodaTC.TabPages[i].Controls[0].Location = new Point(10, 10);

                Label warunki = new Label();
                warunki.Text   = "warunki: " + xmlNode.SelectSingleNode("conditions").InnerText;
                warunki.Width  = 200;
                warunki.Height = 20;
                pogodaTC.TabPages[i].Controls.Add(warunki);
                pogodaTC.TabPages[i].Controls[1].Location = new Point(10, 40);

                Label temperatura = new Label();
                temperatura.Text = "temp. (min/max): " +
                                   xmlNode.SelectSingleNode("low/celsius").InnerText + @" / " +
                                   xmlNode.SelectSingleNode("high/celsius").InnerText + @" C";
                temperatura.Width  = 200;
                temperatura.Height = 20;
                pogodaTC.TabPages[i].Controls.Add(temperatura);
                pogodaTC.TabPages[i].Controls[2].Location = new Point(10, 60);

                Label wiatr = new Label();
                wiatr.Text = "wiatr: do " +
                             xmlNode.SelectSingleNode("maxwind/kph").InnerText + @" km/h, " +
                             xmlNode.SelectSingleNode("maxwind/dir").InnerText;
                wiatr.Width  = 200;
                wiatr.Height = 20;
                pogodaTC.TabPages[i].Controls.Add(wiatr);
                pogodaTC.TabPages[i].Controls[3].Location = new Point(10, 80);

                PictureBox picture = new PictureBox();
                picture.ImageLocation = xmlNode.SelectSingleNode("icon_url").InnerText;
                pogodaTC.TabPages[i].Controls.Add(picture);
                pogodaTC.TabPages[i].Controls[4].Location = new Point(220, 10);

                i++;
            }
            pogodaTC.Visible = true;
        }
예제 #2
0
 public Aplikacja(Pogodynka pogodynka)
 {
     xmlPogoda      = new XmlDocument();
     this.pogodynka = pogodynka;
 }