or
var columns = mainViewModel.Records.First()
.Properties
.Select((x, i) =>
new
{ Name = x.Name, DataType = x.DataType, Index = i })
.ToArray();
foreach
(var column
in
columns)
{
var binding =
new
Binding(
string
.Format(
"Properties[{0}].Value"
, column.Index));
GridViewDataColumn col =
new
GridViewDataColumn();
col.UniqueName = column.Name;
col.Header = column.Name;
col.DataMemberBinding = binding;
col.DataType = column.DataType;
col.IsSortable =
true
;
fleetGrid.Columns.Add(col);
}
<
telerik:RadGridView.RowStyle
>
<
Style
TargetType
=
"telerik:GridViewRow"
>
<
Setter
Property
=
"Background"
Value
=
"{Binding Status,Converter={StaticResource rowcolorConveter}}"
></
Setter
>
<
Setter
Property
=
"Background"
>
<
Setter.Value
>
<
MultiBinding
Converter
=
"{StaticResource ABCConveter}"
>
<
Binding
Path
=
"abc"
/>//Hardcode Column Name
<
Binding
Path
=
"DataContext.SelectedView"
RelativeSource
=
"{RelativeSource AncestorType={x:Type UserControl}}"
/>
</
MultiBinding
>
</
Setter.Value
>
</
Setter
>
</
Style
>
</
telerik:RadGridView.RowStyle
>