示例#1
0
        /*Populate Grid function*/
        void Populate()
        {
            Debug.Print("Populating...");

            /*populating iniziale*/
            for (int i = 0; i < al.Count; i++)
            {
                Hashtable ht = al[i] as Hashtable;
                _dataGrid.AddItem(new DataGridItem(new object[4] {
                    ht["id"], ht["name"], ht["price"], qnt
                }));
            }
            _dataGrid.Invalidate();

            /*se l'utente deve modificare l'ordine'*/
            if (flagmdf == 1)
            {
                _pCounter.Text   = price.ToString();
                _qntCounter.Text = qnt.ToString();
                int qnt_appoggio = qnt;

                _dataGrid.Clear();
                _menu.Invalidate();
                _dataGrid.Invalidate();

                for (int i = 0; i < al.Count; i++)
                {
                    Hashtable ht = al[i] as Hashtable;
                    qnt = 0;
                    foreach (Product p in payment)
                    {
                        if (p.id == Double.Parse(ht["id"].ToString()))
                        {
                            qnt = p.quantita;
                        }
                    }
                    _dataGrid.AddItem(new DataGridItem(new object[4] {
                        ht["id"], ht["name"], ht["price"], qnt
                    }));
                }
                _dataGrid.Invalidate();
                qnt = qnt_appoggio;
            }
        }
示例#2
0
        void Looping()
        {
            //create grid column
            dataGrid.AddColumn(new DataGridColumn("Room", 200));
            dataGrid.AddColumn(new DataGridColumn("Time", 200));
            dataGrid.AddColumn(new DataGridColumn("Light", 200));

            String[]  origin_names = null;
            ArrayList tabledata    = null;
            // Create a database in memory,
            // file system is possible however!
            Database myDatabase = new GHI.SQLite.Database();

            myDatabase.ExecuteNonQuery("CREATE Table Lights" +
                                       " (Room TEXT, Time TEXT, Value DOUBLE)");
            //reset database n display
            btnReset.TapEvent += (object sender) =>
            {
                myDatabase.ExecuteNonQuery("DELETE FROM Lights");
                dataGrid.Clear();
                dataGrid.Invalidate();
            };
            while (true)
            {
                //get sensor value
                var LightValue = lightSense.ReadProportion();
                var TimeStr    = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                var item       = new DataGridItem(new object[] { "My Room", TimeStr, LightValue });
                //add data to grid
                dataGrid.AddItem(item);
                dataGrid.Invalidate();
                //add rows to table
                myDatabase.ExecuteNonQuery("INSERT INTO Lights (Room, Time, Value)" +
                                           " VALUES ('My Room', '" + TimeStr + "' , " + LightValue + ")");

                // Process SQL query and save returned records in SQLiteDataTable
                ResultSet result = myDatabase.ExecuteQuery("SELECT * FROM Lights");
                // Get a copy of columns orign names example
                origin_names = result.ColumnNames;
                // Get a copy of table data example
                tabledata = result.Data;
                String fields = "Fields: ";
                for (int i = 0; i < result.ColumnCount; i++)
                {
                    fields += result.ColumnNames[i] + " |";
                }
                Debug.Print(fields);
                object obj;
                String row = "";
                for (int j = 0; j < result.RowCount; j++)
                {
                    row = j.ToString() + " ";
                    for (int i = 0; i < result.ColumnCount; i++)
                    {
                        obj = result[j, i];
                        if (obj == null)
                        {
                            row += "N/A";
                        }
                        else
                        {
                            row += obj.ToString();
                        }
                        row += " |";
                    }
                    Debug.Print(row);
                }

                Thread.Sleep(3000);
            }
            myDatabase.Dispose();
        }
示例#3
0
        // This method is run when the mainboard is powered up or reset.
        void ProgramStarted()
        {
            //set display
            this.videoOut.SetDisplayConfiguration(VideoOut.Resolution.Vga800x600);
            //set glide
            window = GlideLoader.LoadWindow(Resources.GetString(Resources.StringResources.Form1));

            txtTime          = (GHI.Glide.UI.TextBlock)window.GetChildByName("txtTime");
            GvData           = (GHI.Glide.UI.DataGrid)window.GetChildByName("GvData");
            BtnReset         = (GHI.Glide.UI.Button)window.GetChildByName("BtnReset");
            txtMessage       = (GHI.Glide.UI.TextBlock)window.GetChildByName("TxtMessage");
            Glide.MainWindow = window;

            //setup grid
            //create grid column
            GvData.AddColumn(new DataGridColumn("Time", 200));
            GvData.AddColumn(new DataGridColumn("Temp", 200));
            GvData.AddColumn(new DataGridColumn("Humid", 200));
            GvData.AddColumn(new DataGridColumn("Light", 200));
            GvData.AddColumn(new DataGridColumn("Gas", 200));


            // Create a database in memory,
            // file system is possible however!
            myDatabase = new GHI.SQLite.Database();
            myDatabase.ExecuteNonQuery("CREATE Table Sensor" +
                                       " (Time TEXT, Temp DOUBLE,Humid DOUBLE,Light DOUBLE,Gas DOUBLE)");
            //reset database n display
            BtnReset.TapEvent += (object sender) =>
            {
                Counter = 0;
                myDatabase.ExecuteNonQuery("DELETE FROM Sensor");
                GvData.Clear();
                GvData.Invalidate();
            };

            //reset lora
            _restPort.Write(false);
            Thread.Sleep(1000);
            _restPort.Write(true);
            Thread.Sleep(1000);


            _loraSerial = new SimpleSerial(GHI.Pins.FEZSpiderII.Socket11.SerialPortName, 57600);
            _loraSerial.Open();
            _loraSerial.DataReceived += _loraSerial_DataReceived;
            //get version
            _loraSerial.WriteLine("sys get ver");
            Thread.Sleep(1000);
            //pause join
            _loraSerial.WriteLine("mac pause");
            Thread.Sleep(1500);
            //antena power
            _loraSerial.WriteLine("radio set pwr 14");
            Thread.Sleep(1500);
            //set device to receive
            _loraSerial.WriteLine("radio rx 0"); //set module to RX
            txtMessage.Text = "LORA-RN2483 setup has been completed...";
            txtMessage.Invalidate();
            window.Invalidate();
            //myDatabase.Dispose();
        }
示例#4
0
        void PrintToLCD(string message)
        {
            String[]  origin_names = null;
            ArrayList tabledata    = null;

            //cek message
            if (message != null && message.Length > 0)
            {
                try
                {
                    if (message == "Radio Error")
                    {
                        return;
                    }
                    var        obj    = Json.NETMF.JsonSerializer.DeserializeString(message) as Hashtable;
                    var        detail = obj["Data"] as Hashtable;
                    DeviceData data   = new DeviceData()
                    {
                        DeviceSN = obj["DeviceSN"].ToString()
                    };
                    data.Data = new DataSensor()
                    {
                        Gas = Convert.ToDouble(detail["Gas"].ToString()), Temp = Convert.ToDouble(detail["Temp"].ToString()), Humid = Convert.ToDouble(detail["Humid"].ToString()), Light = Convert.ToDouble(detail["Light"].ToString())
                    };
                    //update display
                    txtTime.Text    = DateTime.Now.ToString("dd/MMM/yyyy HH:mm:ss");
                    txtMessage.Text = "Data Reveiced Successfully.";
                    txtTime.Invalidate();
                    txtMessage.Invalidate();

                    var TimeStr = DateTime.Now.ToString("dd/MM/yy HH:mm");
                    //insert to db
                    var item = new DataGridItem(new object[] { TimeStr, data.Data.Temp, data.Data.Humid, data.Data.Light, data.Data.Gas });
                    //add data to grid
                    GvData.AddItem(item);
                    Counter++;

                    GvData.Invalidate();
                    window.Invalidate();

                    //add rows to table
                    myDatabase.ExecuteNonQuery("INSERT INTO Sensor (Time, Temp,Humid,Light,Gas)" +
                                               " VALUES ('" + TimeStr + "' , " + data.Data.Temp + ", " + data.Data.Humid + ", " + data.Data.Light + ", " + data.Data.Gas + ")");
                    window.Invalidate();
                    if (Counter > 13)
                    {
                        //reset
                        Counter = 0;
                        myDatabase.ExecuteNonQuery("DELETE FROM Sensor");
                        GvData.Clear();
                        GvData.Invalidate();
                    }

                    /*
                     * // Process SQL query and save returned records in SQLiteDataTable
                     * ResultSet result = myDatabase.ExecuteQuery("SELECT * FROM Sensor");
                     * // Get a copy of columns orign names example
                     * origin_names = result.ColumnNames;
                     * // Get a copy of table data example
                     * tabledata = result.Data;
                     * String fields = "Fields: ";
                     * for (int i = 0; i < result.ColumnCount; i++)
                     * {
                     *  fields += result.ColumnNames[i] + " |";
                     * }
                     * Debug.Print(fields);
                     * object obj;
                     * String row = "";
                     * for (int j = 0; j < result.RowCount; j++)
                     * {
                     *  row = j.ToString() + " ";
                     *  for (int i = 0; i < result.ColumnCount; i++)
                     *  {
                     *      obj = result[j, i];
                     *      if (obj == null)
                     *          row += "N/A";
                     *      else
                     *          row += obj.ToString();
                     *      row += " |";
                     *  }
                     *  Debug.Print(row);
                     * }
                     */
                }
                catch (Exception ex)
                {
                    txtMessage.Text = message + "_" + ex.Message + "_" + ex.StackTrace;
                    txtMessage.Invalidate();
                }
            }
        }