public async void WriteTransaction()

in BluetoothLEExplorer/BluetoothLEExplorer/ViewModels/CharacteristicPageViewModel.cs [684:731]


        public async void WriteTransaction()
        {
            if (!String.IsNullOrEmpty(ValueToWrite))
            {
                IBuffer writeBuffer = null;

                if (WriteType == WriteTypes.Decimal)
                {
                    DataWriter writer = new DataWriter();
                    writer.ByteOrder = ByteOrder.LittleEndian;
                    writer.WriteInt32(Int32.Parse(ValueToWrite));
                    writeBuffer = writer.DetachBuffer();
                }
                else if (WriteType == WriteTypes.Hex)
                {
                    try
                    {
                        // pad the value if we've received odd number of bytes
                        if (ValueToWrite.Length % 2 == 1)
                        {
                            writeBuffer = GattConvert.ToIBufferFromHexString("0" + ValueToWrite);
                        }
                        else
                        {
                            writeBuffer = GattConvert.ToIBufferFromHexString(ValueToWrite);
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageDialog dialog = new MessageDialog(ex.Message, "Error");
                        await dialog.ShowAsync();
                        return;
                    }

                }
                else if (WriteType == WriteTypes.UTF8)
                {
                    writeBuffer = CryptographicBuffer.ConvertStringToBinary(ValueToWrite,
                    BinaryStringEncoding.Utf8);
                }

                context.WriteTransaction(Characteristic.Characteristic, writeBuffer);
            }
            else
            {
                NotifyUser.Insert(0, "No data to write to device");
            }
        }