I\'m planning a WPF application which will
You need to setup a DataTemplate for each field type eg Date, String, Bool. This will determine how each field will appear.
You could then use the columns for a database query to generate a list of objects and place them into an ItemsControl.
ObservableCollection columns = new ObservableCollection();
// Add columns from DB
columns.Add(new StringColumnDef{Object=..., Field=..., Label=..., Value=...});
columns.Add(new DateColumnDef{Object=..., Field=..., Label=..., Value=...});
items.ItemsSource = columns; // items is an ItemsControl
Each item in the item control will display based on the DataTemplate for that type.
Inside the ColumnDef you could use Reflection to update the data object with changes from the UI controls. You can then apply the changes to the databae when the user saves.