Forse qualcuno potrebbe aver bisogno di inserire un’immagine in un documento rtf o doc da generare in fase di esecuzione.
Il controllo da utilizzare è (Ovviamente!!) un RichTextBox.
Questo controllo altro non è che un collegamento a WordPad e quindi (non riuscendoci nemmeno quest’ultimo!!!) non può facilmente contenere immagini.
Il trucco sta nel fargli copiare un immagine dopo averla copiata nella Clipboard.
Per fare questo sfruttiamo una libreria di windows la user32.
Per prima cosa creiamo un form con una RichTextBox che chiamero rtb1 e con un Button che chiameremo Button1.

Passiamo poi al codice.
Imports System
Imports System.Windows
Imports System.Windows.Forms
Imports System.Runtime.InteropServices
Public Class Form1
Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, _
ByVal lParam As Object) As Integer
Const WM As Short = &H400S
Const WM_COPY As Integer = WM + 30
Const WM_PASTE = &H302
Dim Image1 as Image
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
rtb1.Text = ""
Clipboard.Clear()
Image1=Image.FromFile(“C:\SBSoft.bmp”)
SendMessage(Image1, WM_COPY, 0, 0)
SendMessage(rtb1.Handle, WM_PASTE, 0, 0)
End Sub
End Class
Mandandolo in esecuzione dovreste ottenere una cosa del genere:

Ciao
Ivan
?>