C#Windows Forms: cómo configurar de forma programada la vista previa de la imagen para la carpeta de archivos(VSTO 2010)
winforms outlook (1)
Después de algunos juegos, encontré otro problema ( chkAttachment.Text
funciona mientras que .SelectedValue.ToString()
no.
Además, el problema con el formato de cadena a imagen se resuelve prefijando la ruta con Image.FromFile(
Entonces, la forma correcta de cambiar la imagen al seleccionar es:
if(chkAttachments.Text.Contains(".jpg"))
{
var selectedImage = chkAttachments.Text;
picAttachPreview.Image = Image.FromFile(tempfolder + @"/" + selectedImage);
}
Windows Forms - VSTO - Outlook
Antecedentes : estoy creando un complemento de archivo digital para Office donde el usuario puede buscar en la base de datos el cliente (a quien pertenece el documento) y guardará el archivo en la (s) carpeta (s) apropiada (s) según la naturaleza del archivo . Hasta ahora, esto funciona para Word como estaba planeado, pero ahora estoy usando Outlook, que tiene más que considerar (archivos adjuntos, cuerpo del mensaje, etc.).
Lo tengo funcionando hasta el momento que los archivos adjuntos se guardan en una carpeta temporal (que se vacía cada vez que se cierra el formulario de Windows) listo para ser ordenado y puedo obtener información sobre el remitente / asunto / cuerpo del correo electrónico. La lista de archivos adjuntos se establece en un CheckedListBox
Problema actual : cuando un usuario está buscando archivar un archivo adjunto (una gran cantidad de documentos / documentos escaneados aparecerán), las imágenes serán confusas, ya que pueden ser necesarias o totalmente sin importancia, por lo que deseo obtener una vista previa de las imágenes.
Estoy tratando de lograrlo en el caso de
private void chkAttachments_SelectedValueChanged(object sender, EventArgs e)
La imagen se muestra en picAttachPreview
(PictureBox) como una vista previa de ese archivo. Esto tomará la imagen de la tempfolder
( @"c:/temp/DigitalArchive"
).
Entiendo que esto es incorrecto, pero estoy tratando de establecer el origen de la imagen que se muestra en la pantalla en ese evento SelectedValueChanged.
Mi código [incorrecto] -
if(chkAttachments.Text.Contains(".jpg"))
{
var selectedImage = chkAttachments.SelectedValue.ToString();
picAttachPreview.Image = tempfolder + @"/" + selectedImage; //(A)
}
La línea (A)
es el problema y aunque entiendo por qué, no sé cómo resolverlo. El archivo de tempfolder
está construido con tempfolder
y selectedImage
(por ejemplo, ScannedDoc.jpg) pero el tipo de ruta de archivo es String pero picAttachPreview
es System.Drawing.Image así que supongo que estoy buscando la propiedad incorrecta de picAttachPreview
para establecer el origen de la imagen.
Cualquier ayuda u orientación será inmensamente apreciada. Gracias.
(Además, si conoce una buena manera de configurar la vista previa de documentos / PDF, le estaré inmensamente agradecido)
Editar Aunque el enlace resuelve parte de mi problema, hay un problema con chkAttachments.SelectedValue.ToString()
que respondí a continuación. (Si alguien me puede aconsejar sobre la etiqueta del sitio para esta situación, ¿elimino la pregunta o la dejo con la respuesta que encontré para que las personas puedan encontrar la solución al mismo problema en el futuro? Gracias)