如何公开要从GUI中挑选的PDFSharp XBrush



第一次使用PDFSharp时,我有一个获胜表单,用户可以为要创建的PDF选择字体和大小。此外,该应用程序在页面上绘制了一些当前硬编码颜色的矩形,如下所示:

rect = new XRect(5, 300, 25, 15);
gfx.DrawRectangle(XBrushes.SeaShell, rect); //SET COLOR TO RECT
tf.Alignment = XParagraphAlignment.Center;
tf.DrawString("No", invoiceItemsHeaderFont, XBrushes.Black, rect, 
XStringFormats.TopLeft);

我希望用户能够通过下拉菜单选择颜色。如何从XBrush加载所有颜色。到一个列表,然后将其解析为这样,这是一种尝试:

foreach(XBrushes xbrush in typeof(XBrushes)
{
colorsRect.Add(xbrush.ToString());
}

谢谢大家!

我知道这有点晚了,但也许这可以帮助其他人。

我想你们只是想收集不同的画笔?

我查看了XBrush类,它的所有公共静态属性似乎都是画笔。您可以使用反射来遍历其所有属性,并获得笔刷的值。

类似于:

public static IEnumerable<XSolidBrush> Brushes
{
get
{
return typeof(XBrushes).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)
.Select(p => p.GetValue(null))
.Where(b=>b.GetType()==typeof(XSolidBrush))
.Cast<XSolidBrush>();
}
}

相关内容

  • 没有找到相关文章

最新更新