Reputation: 499
I have this class:
public class Car
{
public struct CarType
{
public string Manufacturer { get; set; }
public string Model { get; set; }
public int Year { get; set; }
}
public CarType Type;
public string LicenseNumber { get; set; }
public int Km { get; set; }
}
To bind LicenseNumber or Km to my listview, I use:
<ListView.View>
<GridView>
<GridViewColumn Width="140" DisplayMemberBinding="{Binding LicenseNumber}">
<GridViewColumn.Header>
<GridViewColumnHeader Click="GridViewColumnHeader_Click">License Number</GridViewColumnHeader>
</GridViewColumn.Header>
</GridViewColumn>
</GridView>
</ListView.View>
The command DisplayMemberBinding="{Binding LicenseNumber}"
binds to LicenseNumber property.
But how to bind sub-class. like Type.Manufacturer? Type.Model?
Upvotes: 2
Views: 215
Reputation: 19296
You should using following code:
<ListView.View>
<GridView>
<GridViewColumn Width="140" DisplayMemberBinding="{Binding Type.Manufacturer}">
...
Upvotes: 0
Reputation: 77285
You probably never tried.
<GridViewColumn Width="140" DisplayMemberBinding="{Binding Type.Manufacturer}">
Upvotes: 0
Reputation: 32505
You can bind to properties on instances as well (just use the dot notation that you are already familiar with):
<TextBlock Text="{Binding Path=Type.Manufacturer}" />
Upvotes: 1