Cómo exponer los XBrushes de PDFSharp para ser seleccionados desde la interfaz gráfica de usuario (GUI)?
Primer vez trabajando con PDFSharp, tengo un formulario de Windows que permite al usuario seleccionar una fuente y su tamaño para el PDF a crear. La aplicación también dibuja algunos rectángulos en la página con un color actualmente codificado de la siguiente manera:
rect = new XRect(5, 300, 25, 15);
gfx.DrawRectangle(XBrushes.SeaShell, rect); // Establecer color al rectángulo
tf.Alignment = XParagraphAlignment.Center;
tf.DrawString("No", invoiceItemsHeaderFont, XBrushes.Black, rect, XStringFormats.TopLeft);
Quiero que el usuario pueda seleccionar el color a través de un menú desplegable. ¿Cómo puedo cargar todos los colores de XBrushes
en una lista y luego analizarlos de esta manera? Este es uno de los intentos:
foreach (XBrushes xbrush in typeof(XBrushes))
{
colorsRect.Add(xbrush.ToString());
}
¡Gracias a todos!
davy.ai
Para cargar todos los colores de XBrushes en una lista y analizarlo, puedes usar el siguiente código:
Este código obtiene todas las propiedades del tipo XBrushes, verifica si son del tipo XSolidBrush y agrega su color a la lista colorsRect. Luego, puedes vincular esta lista a un control desplegable para que el usuario pueda seleccionar un color para los rectángulos.
Una vez que el usuario selecciona un color, puedes obtener el objeto XSolidBrush correspondiente de la siguiente manera:
Donde
selectedColor
es la representación de cadena del color seleccionado (por ejemplo, “Rojo”). Luego, puedes establecer el color del rectángulo de la siguiente manera:Espero que esto ayude. Hazme saber si tienes alguna otra pregunta.