2017-01-04 5 views
2

J'échoue à trouver un moyen de charger une chaîne qui ne provient pas d'un fichier dans une nouvelle instance d'un RichTextBox. Plus précisément, le texte provient d'une feuille Excel contenant du texte au format RTF.Charger la chaîne dans RichTextBox

Il y a la LoadFile-Méthode pour le chargement de fichiers dans un RichTextBox, qui est surchargée pour une utilisation avec cours d'eau:

LoadFile(Stream, RichTextBoxStreamType) 

Mon progrès à ce jour:

[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") 
$rtb = New-Object System.Windows.Forms.RichTextBox 
$rtb.LoadFile($Worksheet.Cells.Item(1,9).Text, [System.Windows.Forms.RichTextBoxStreamType]::RichText) 

Est-ce la bonne façon de fais le? Suis-je dans la mauvaise direction?

Toute aide est grandement appréciée!

+1

Pouvez-vous ajouter simplement comme propriété de l'objet, comme celui-ci? '$ rtb = Nouveau-objet System.Windows.Forms.RichTextBox -property @ {rtf = $ Worksheet.Cells.Item (1,9) .Text}' – BenH

+0

@BenH Merci qui a fonctionné! Faites-en une réponse et je l'accepterai! –

Répondre

2

Le RichTextBoxclass a la propriété Rtf. Lors de la construction d'une nouvelle instance de la RichTextBox, vous pouvez définir la propriété Rtf en utilisant le paramètre -property de New-Object:

[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") 
$rtb = New-Object System.Windows.Forms.RichTextBox -property @{ 
    rtf = $Worksheet.Cells.Item(1,9).Text 
}