Не существует связанного класса Pens
, поскольку Pen
идентифицируется как Brush
и Thickness
, а не только одним свойством.
Если выВам нужен набор стандартных ручек (в зависимости от толщины), тогда вам придется создавать свои собственные.Другой подход заключается в создании генератора кода для предоставления соответствующих ручек.
Вот пример класса, который добавляет Pen
для каждого значения по умолчанию Brush
:
public class DefaultPens
{
private Dictionary<Brush, Pen> pens;
public double Thickness
{
get;
private set;
}
// used like defaultPens[Brushes.Red]
public Pen this[Brush brush]
{
get { return this.pens[brush]; }
}
public DefaultPens(double thickness)
{
this.pens = typeof(Brushes).GetProperties(BindingFlags.Static)
.Where(pi => pi.PropertyType == typeof(Brush))
.Select(pi => pi.GetValue(null, null))
.ToDictionary(
b => b,
b => new Pen(b, thickness));
this.Thickness = thickness;
}
}