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>