protected override void OnGetValue(PropertySpecEventArgs e)
{
e.Value = propValues[e.Property.Name];
// if(e.Value == null)
// throw new System.Exception("No value with the specified property name exists. PropertyName: " + e.Property.Name);
base.OnGetValue(e);
}