Como faço para copiar uma imagem e texto para a área de transferência como um objeto?

StackOverflow https://stackoverflow.com/questions/285042

  •  08-07-2019
  •  | 
  •  

Pergunta

Eu estou tentando copiar tanto uma imagem de um arquivo e texto de um arquivo para a área de transferência. Minha intenção é, em seguida, abrir um documento do Word ou um e-mail do Outlook e colar o texto e a imagem em um comando padrão colar (CTRL-V, por exemplo). Eu posso fazer as duas coisas separadamente com bastante facilidade, mas fazê-los tanto em uma operação não parece trabalho.

Isto é como eu tenho os dois trabalhadora como operações separadas (apenas linhas de código relevante, claro, com try / catch retirados etc.):

adicionar imagem à área de transferência:

...

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

...

Adicione o texto a área de transferência:

...

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

Clipboard.SetText(text);

...

Eu estou usando C # e .NET 2.0 framework e direcionamento Windows XP (e provavelmente Vista no futuro próximo).

TIA

Foi útil?

Solução

Notei apenas objeto pode ser passado.

Nesse caso, quando o usuário pressiona o comando para colar, seu código poderia executar duas funções, ou uma função recursiva, e cada vez obter os dados que você quer e colá-lo em.

Assim, olhar para looping ou recursão.

Outras dicas

Você pode usar RTF, que poderia combinar textos e gráficos. Note que você pode ter CF_BITMAP e CF_TEXT na área de transferência ao mesmo tempo. Mas não é útil. Você deseja obter o texto quando você colar no bloco de notas, você deseja obter o bitmap quando você colar no Paint, ea maioria dos outros aplicativos que escolher um ou o outro, mas nunca ambos. Portanto, é meramente acadêmica. Tipo de puro, na forma que mau funcionamento do transportador sobre Star Trek foram limpo. Mas também confuso.

Talvez você poderia usar SetDataObject que requer um parâmetro de objeto, você pode usar uma matriz de objeto?

A matriz objeto poderia manter seus dados necessários.

Veja este link:

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

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top