Tx Viewer 3 section Layout
MODIFY
WalletWasabi.Gui/Controls/WalletExplorer/TransactionViewerView.xaml
WalletWasabi.Gui/Controls/WalletExplorer/TransactionViewerView.xaml
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450">
<controls:GroupBox Title="{Binding Title}" TextBlock.FontSize="30" Padding="20" Margin="10">
<Grid Classes="content">
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="1*" />
+ <RowDefinition Height="1*" />
+ <RowDefinition Height="1*" />
+ </Grid.RowDefinitions>
+
+ <DockPanel Grid.Row="0" LastChildFill="True">
+ <TextBlock DockPanel.Dock="Top" Text="PSBT Json string" FontWeight="Bold" />
+ <Border BorderThickness="1" BorderBrush="{DynamicResource ThemeBorderHighBrush}" Background="Transparent" Margin="0,8,0,8" Padding="4">
+ <controls:ExtendedTextBox BorderThickness="0" Margin="0" Padding="0" Text="{Binding PsbtJsonText}" IsReadOnly="True" TextWrapping="Wrap" AcceptsReturn="True" />
+ </Border>
+ </DockPanel>
+
+ <DockPanel Grid.Row="1" LastChildFill="True">
+
+ <TextBlock DockPanel.Dock="Top" Text="PSBT Hex string" FontWeight="Bold" />
+ <Border BorderThickness="1" BorderBrush="{DynamicResource ThemeBorderHighBrush}" Background="Transparent" Margin="0,8,0,8" Padding="4">
+ <controls:ExtendedTextBox BorderThickness="0" Margin="0" Padding="0" Text="{Binding PsbtHexText}" IsReadOnly="True" TextWrapping="Wrap" AcceptsReturn="True" />
+ </Border>
+ </DockPanel>
+
+ <DockPanel Grid.Row="2" LastChildFill="True">
+ <TextBlock DockPanel.Dock="Top" Text="PSBT Base64 string" FontWeight="Bold" />
+ <Border BorderThickness="1" BorderBrush="{DynamicResource ThemeBorderHighBrush}" Background="Transparent" Margin="0,8,0,8" Padding="4">
+ <controls:ExtendedTextBox BorderThickness="0" Margin="0" Padding="0" Text="{Binding PsbtBase64Text}" IsReadOnly="True" TextWrapping="Wrap" AcceptsReturn="True" />
+ </Border>
+ </DockPanel>
</Grid>
</controls:GroupBox>
</UserControl>

MODIFY
WalletWasabi.Gui/Controls/WalletExplorer/TransactionViewerViewModel.cs
WalletWasabi.Gui/Controls/WalletExplorer/TransactionViewerViewModel.cs
@@ -13,9 +13,30 @@ namespace WalletWasabi.Gui.Controls.WalletExplorer
{
private string _errorMessage;
private string _successMessage;
+ private string _psbtJsonText;
+ private string _psbtHexText;
+ private string _psbtBase64Text;
private CompositeDisposable Disposables { get; set; }
+ public string PsbtJsonText
+ {
+ get => _psbtJsonText;
+ set => this.RaiseAndSetIfChanged(ref _psbtJsonText, value);
+ }
+
+ public string PsbtHexText
+ {
+ get => _psbtHexText;
+ set => this.RaiseAndSetIfChanged(ref _psbtHexText, value);
+ }
+
+ public string PsbtBase64Text
+ {
+ get => _psbtBase64Text;
+ set => this.RaiseAndSetIfChanged(ref _psbtBase64Text, value);
+ }
+
public string ErrorMessage
{
get => _errorMessage;
@@ -59,6 +80,16 @@ namespace WalletWasabi.Gui.Controls.WalletExplorer
public void UpdatePsbt(PSBT psbt)
{
+ try
+ {
+ PsbtJsonText = psbt.ToString();
+ PsbtHexText = psbt.ToHex();
+ PsbtBase64Text = psbt.ToBase64();
+ }
+ catch (Exception ex)
+ {
+ OnException(ex);
+ }
}
}
}

Tx Viewer 3 section Layout