public async void MultisigTransaction_Clicked(System.Object sender, System.EventArgs e) { //MultisigTransaction // List for Pks for multisig account List <Ed25519PublicKeyParameters> publicKeys = new List <Ed25519PublicKeyParameters>(); // restore accounts var accounts = await helper.RestoreAccounts(); Account account1 = accounts[0]; Account account2 = accounts[1]; Account account3 = accounts[2]; publicKeys.Add(account1.GetEd25519PublicKey()); publicKeys.Add(account2.GetEd25519PublicKey()); publicKeys.Add(account3.GetEd25519PublicKey()); // Instantiate the the Multisig Accout MultisigAddress msig = new MultisigAddress(1, 2, publicKeys); Console.WriteLine("Multisignature Address: " + msig.ToString()); // dispense funds to msig account string DEST_ADDR = account3.Address.ToString(); // add some notes to the transaction // todo notes byte[] notes = Encoding.UTF8.GetBytes("These are some notes encoded in some way!");//.getBytes(); var amount = Utils.AlgosToMicroalgos(1); Transaction tx = null; //noteb64 = notes try { tx = Utils.GetPaymentTransaction(new Address(msig.ToString()), new Address(DEST_ADDR), amount, "this is a multisig trans", algodApiInstance.TransactionParams()); } catch (Exception err) { Console.WriteLine("Could not get params", err.Message); } // Sign the Transaction for two accounts SignedTransaction signedTx = account1.SignMultisigTransaction(msig, tx); SignedTransaction completeTx = account2.AppendMultisigTransaction(msig, signedTx); // send the transaction to the network PostTransactionsResponse id = null; try { id = Utils.SubmitTransaction(algodApiInstance, completeTx); Console.WriteLine("Successfully sent tx with id: " + id.TxId); var x = Utils.WaitTransactionToComplete(algodApiInstance, id.TxId); Console.WriteLine(x); } catch (ApiException err) { Console.WriteLine("Exception when calling algod#rawTransaction: " + err.Message); } await SecureStorage.SetAsync(helper.StorageMultisigTransaction, id.TxId.ToString()); MultisigTransaction.Text = "Transaction successfully sent"; GetMultiSigTx.IsVisible = true; MultisigTransactionp.Text = "Transaction successfully sent"; GetMultiSigTxp.IsVisible = true; //ulong? balance = await helper.GetAccountBalance(helper.StorageMultisig); //var htmlSource = new HtmlWebViewSource(); //htmlSource.Html = @"<html><body><h3> Multisig balance = " + balance.ToString() + " </h3>" + // "</body></html>"; //myWebView.Source = htmlSource; buttonstate(); await DisplayAccount(helper.StorageAccountName3); //var mytx = await SecureStorage.GetAsync(helper.StorageMultisigTransaction); //if (!(mytx == null || mytx == "")) //{ // htmlSource = new HtmlWebViewSource(); // htmlSource.Html = @"<html><body><h3> Transaction ID = " + mytx.ToString() + " </h3>" + // "</body></html>"; // myWebView.Source = htmlSource; //} }