mikronik24

Untitled

Dec 2nd, 2020 (edited)
812
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using Newtonsoft.Json;
  11. using System.Net;
  12. using GMap.NET.MapProviders;
  13.  
  14. namespace Form_JSON_test
  15. {
  16.  
  17.     public partial class Form1 : Form
  18.     {
  19.         int numberOfCars = 0;
  20.         dynamic dobj;
  21.  
  22.  
  23.  
  24.         private void loadDataToTable()
  25.         {
  26.             listView1.Items.Clear();
  27.             for (int i = 0; i <= numberOfCars; i++)
  28.             {
  29.                 ListViewItem id = new ListViewItem(dobj[i]["Id"].ToString());
  30.                 id.SubItems.Add(dobj[i]["Name"].ToString());
  31.                 id.SubItems.Add(dobj[i]["Type"].ToString());
  32.                 id.SubItems.Add(dobj[i]["SerialNumber"].ToString());
  33.                 id.SubItems.Add(dobj[i]["Strength"].ToString());
  34.                 id.SubItems.Add(dobj[i]["BatteryLevel"].ToString());
  35.                 id.SubItems.Add(dobj[i]["WorkingMode"].ToString());
  36.                 listView1.Items.Add(id);
  37.             }
  38.         }
  39.  
  40.         private void getData(int jid = 0)
  41.         {
  42.             try
  43.             {
  44.                 WebClient client = new WebClient();
  45.                 string jsonToDecode = client.DownloadString("http://localhost:8080/radios");
  46.                 dobj = JsonConvert.DeserializeObject<dynamic>(jsonToDecode);
  47.                 numberOfCars = JsonConvert.DeserializeObject<List<Car>>(jsonToDecode).Count()-1;
  48.                 numericUpDown1.Maximum = numberOfCars;
  49.                 textBox1.Text = jsonToDecode.ToString();
  50.  
  51.                 loadDataToTable();
  52.             }
  53.             catch (Exception ee)
  54.             {
  55.                 listView1.Items.Clear();
  56.                 if(MessageBox.Show(ee.Message + " Would you like to retry?", "ERROR", MessageBoxButtons.YesNo, MessageBoxIcon.Error)
  57.                     == DialogResult.Yes)
  58.                 {
  59.                     getData();
  60.                 }
  61.  
  62.                 textBox1.Text = ee.Message;
  63.             }
  64.            
  65.         }
  66.  
  67.         private void setupTable()
  68.         {
  69.  
  70.             listView1.View = View.Details;
  71.             listView1.FullRowSelect = true;
  72.             listView1.Columns.Add("ID", 30);
  73.             listView1.Columns.Add("Name", 80);
  74.             listView1.Columns.Add("Type", 100);
  75.             listView1.Columns.Add("Serial Number", 150);
  76.             listView1.Columns.Add("Signal Strength", 120);
  77.             listView1.Columns.Add("Battery Level", 120);
  78.             listView1.Columns.Add("Working mode", 150);
  79.         }
  80.  
  81.        
  82.         private void setupGmap(double lat, double longt)
  83.         {
  84.             map.DragButton = MouseButtons.Left;
  85.             map.MapProvider = GMapProviders.GoogleMap;
  86.             map.Position = new GMap.NET.PointLatLng(lat, longt);
  87.             map.MinZoom = 1;
  88.             map.MaxZoom = 100;
  89.             map.Zoom = 10;
  90.         }
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.         public Form1()
  101.         {
  102.             InitializeComponent();
  103.         }
  104.  
  105.         private void Form1_Load(object sender, EventArgs e)
  106.         {
  107.             setupTable();
  108.             getData();
  109.             setupGmap(12.2, 12.4);
  110.         }
  111.  
  112.  
  113.  
  114.         private void numericUpDown1_ValueChanged(object sender, EventArgs e)
  115.         {
  116.             getData((int)numericUpDown1.Value);
  117.         }
  118.     }
  119. }
  120.  
RAW Paste Data