Can you specify a sub-property in the Xceed PropertyGrid's PropertyDefinition?

Consider you have the following classes:

public class Order {
    public Person Customer  { get; set; }
    public string ProductId { get; set; }

public class Person {
    public string FirstName { get; set; }
    public string LastName  { get; set; }

Now say you want the 'Order' class to be exposed in the property grid. You would decorate Customer as being expandable. It would appear like this...

Customer (<-- This is expandable/collapsible)

But... what if instead of the entire Customer property, you only wanted to show FirstName and you want that to appear at the same level as ProductID, like so...


Things I've tried in my PropertyDefinitions:

  1. Setting Name to 'Customer.FirstName'
  2. Setting Name to 'Customer/FirstName'
  3. Using the TargetProperties (instead of Name), and adding 'Customer', then 'FirstName'

Only thing I can think of that works is to do this...

public class OrderWrapper {

    public OrderWrapper(Order order)
        => Order = order;

    private Order order;

    public string FirstName {
        get => order.Customer.FirstName;
        set => order.Customer.FirstName = Value;

    public string ProductId {
        get => order.ProductId;
        set => order.ProductId = Value;

Then using that as the selected object in the property grid. This just seems like such overkill. Is there an easier way?