ИЗМЕНИТЬ ---------------------------------------------- ---
Хм ... нет. Не делайте этого.
Изменить PubKey непросто. Свойство PubKey имеет только Getter, а не Setter, поэтому вы не можете просто создать новый с нужным содержимым, а изменение содержимого существующего тоже не вариант.
Я могу ошибаться поскольку я не привык к nBitCoin
, но мне кажется, что нельзя переключать pubKey на лету. Единственный вариант - создать экземпляр нового Key
с вашим новым PubKey, но новый ключ не будет автоматически разделять все свойства текущего ключа и, следовательно, может вызвать неожиданное поведение.
PubKey создается автоматически, когда он вам нужен, и его значение не должно быть изменено.
(Может быть способ сделать это через класс в папке Secp256k1, но это достаточно глубоко для Я хочу сказать, что должен быть лучший способ решить эту проблему.)
Исходный ответ, который был неправильным
Обычно вы можете использовать оператор присваивания для такого рода операции, например Textbox1.text = bob.PubKey
, но проблема в том, что bob
- это класс Key, а не String, и .PubKey
является классом PubKey, а не String.
Я не знаком с NBitcoin
, но готов поспорить, что вы можете это сделать:
Textbox1.text = bob.PubKey.ToString()
, и он покажет ключ или, по крайней мере, строковое представление ключа. Дело в том, что это может быть неприменимо в других контекстах, не так, как вы можете использовать весь объект bob
.
Я только что взглянул на исходный код, и кажется, что он должен работают так, как я предполагал. Результат должен быть точно таким же, как и при выполнении
Textbox1.text = bob.PubKey.ToHex()
Удачи!