ventana emergente c# image bitmap popup class-library

Mostrar la imagen en la ventana emergente de la biblioteca de la clase c#



popup genexus (1)

Asumiendo WinForms, necesita agregar el PictureBox a una ventana de nivel superior como un Formulario. Si está utilizando WPF, el concepto es idéntico, excepto que debe agregar su cuadro de imagen a una cuadrícula o algo así antes de mostrar la ventana.

using (Form form = new Form()) { Bitmap img = tpv.Img(); form.StartPosition = FormStartPosition.CenterScreen; form.Size = img.Size; PictureBox pb = new PictureBox(); pb.Dock = DockStyle.Fill; pb.Image = img; form.Controls.Add(pb); form.ShowDialog(); }

Tenga en cuenta que en mi ejemplo mostrará el formulario como modal. Si necesita un formulario de llamada de forma no modal, form.Show() lugar y elimine el bloque de using para que su formulario no se elimine inmediatamente.

Sin embargo, un mejor patrón de diseño sería diseñar su método de biblioteca de clase para devolver la imagen a su UI, y hacer que su UI principal muestre la imagen en su lugar. Una API marco nunca debe mostrar una interfaz de usuario directamente así.

Necesito mostrar una imagen de mapa de bits en una ventana emergente creada por la biblioteca de clase de AC. ¿Cómo es esto posible?

He probado lo siguiente:

Bitmap img = tpv.Img(); Graphics graphics = Graphics.FromImage(img); graphics.DrawImage(img, 0, 0);

y

Bitmap img = tpv.Img(); PictureBox pb = new PictureBox(); pb.Size = img.Size; pb.Image = img; pb.Show();

sin embargo, una ventana no se muestra. ¿Es posible obtener una biblioteca de clases para crear una ventana emergente que muestre una imagen de mapa de bits?