Это довольно грязно, но если значение T всегда будет одинаковым для данного PointF, вы можете использовать методы расширения для имитации поведения get / set, которое предлагают свойства.Предполагая, что вы используете компилятор C # 3.0, вы можете сделать что-то вроде этого.
public static class PointFExtensions
{
private static Dictionary<PointF, float> _dict = new Dictionary<PointF, float>();
public static void SetT(this PointF self, float t)
{
_dict.Add(self, t);
}
public static float GetT(this PointF self)
{
return _dict[self];
}
}
Тогда вы можете использовать эти методы, как это:
PointF pf = new PointF(4.0F, 5.0F);
pf.SetT(42);
float t = pf.GetT();