コード例 #1
0
        // Show list of bikes found
        void Keiser_DataEvent(object sender, KeiserM3EventArgs e)
        {
            KeiserM3 b = _bikes.GetData(e.Address);

            string line = string.Format("Type: Keiser {0} Firmware={1} DataType={2} Gear={3} Heartrate={4} KCal={5} Power={6} RPM={7} Time={8} Trip={9} Address={10}",
                                        b.Name, b.Build, b.DataType, b.Gear, b.HeartRate, b.KCal, b.Power, b.RPM, b.Time, b.Trip, b.Address);

            BleDevices.Items.Add(line);

            // Live update for a particular bike
            b.PropertyChanged += Keiser_PropertyChangedEvent;
        }
コード例 #2
0
        // Update bike data
        private void Keiser_PropertyChangedEvent(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            uint address = uint.Parse(e.PropertyName);

            // Build a  line of data
            KeiserM3 b    = _bikes.GetData(address);
            string   line = string.Format("Type: Keiser {0} Firmware={1} DataType={2} Gear={3} Heartrate={4} KCal={5} Power={6} RPM={7} Time={8} Trip={9} Address={10}",
                                          b.Name, b.Build, b.DataType, b.Gear, b.HeartRate, b.KCal, b.Power, b.RPM, b.Time, b.Trip, b.Address);

            string strAddress = address.ToString();
            int    j          = 0;

            // Find which one to update
            foreach (string s in BleDevices.Items)
            {
                if (s.Contains(strAddress))
                {
                    BleDevices.Items[j] = line;
                    break;
                }
                j++;
            }
        }