Frage

Ich versuche, sowohl ein Bild aus einer Datei und Text aus einer Datei in die Zwischenablage zu kopieren. Meine Absicht ist es dann ein Word-Dokument zu öffnen oder einen Ausblick E-Mail und fügen Sie den Text und das Bild in einem Standard-Einfügen-Befehl (STRG + V zum Beispiel). Ich kann sowohl separat tue leicht genug, aber sie beide in einem Arbeitsgang zu tun scheint nicht zu funktionieren.

Dies ist, wie ich die beiden als separate Operationen arbeiten haben (nur relevante Codezeilen natürlich mit Try / Catch usw. abgezogen.):

Fügen Sie Bild zu kopieren:

...

Bitmap imageToAdd = new Bitmap(imageFilePath);
Clipboard.SetImage(imageToAdd);

...

Fügen Sie Text in die Zwischenablage:

...

StreamReader rdr = new StreamReader(textFilePath);
string text = rdr.ReadToEnd();

Clipboard.SetText(text);

...

Ich bin mit C # und .NET 2.0 Framework und Targeting Windows XP (und wahrscheinlich Vista in naher Zukunft).

TIA

War es hilfreich?

Lösung

Ich bemerkte nur ein Objekt in übergeben werden.

In diesem Fall, wenn der Benutzer den Befehl drückt einzufügen, Ihren Code zwei Funktionen ausführen kann, oder eine Funktion rekursiv, und jedes Mal erhalten die gewünschten Daten und fügen Sie ihn in.

Also, schauen Sie sich Looping oder Rekursion.

Andere Tipps

Sie können RTF verwenden, die Text und Grafiken kombinieren könnte. Beachten Sie, dass Sie CF_BITMAP und CF_TEXT in der Zwischenablage zur gleichen Zeit haben. Aber es ist nicht sinnvoll. Sie würden den Text erhalten, wenn Sie in den Editor einfügen, dann würden Sie die Bitmap erhalten, wenn Sie in Paint einfügen, und die meisten anderen Anwendungen würde die eine oder andere holen, aber nie beides. So ist es nur akademisch. Art ordentlich, in der Art und Weise, dass die Transporter Störungen auf Star Trek waren ordentlich. Aber auch chaotisch.

Vielleicht könnten Sie SetDataObject verwenden, die einen Objektparameter erfordert, können Sie ein Objekt-Array verwenden?

Das Objektarray könnte Ihre erforderlichen Daten halten.

Sehen Sie diesen Link:

http://msdn.microsoft.com/en-us/library /5b8kt5z4.aspx

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top