2011-06-17 64 views
2

简单的问题....Silverlight RadGrid将列绑定到对象

我有一个问题将RadGrid(SILVERLIGHT)中的列绑定到自定义类型。

我的情景:

<telerik:RadGridView x:Name="Grid1" AutoGenerateColumns="false" ItemsSource="{Binding Items}" IsReadOnly="true" > 
<telerik:RadGridView.Columns> 
<telerik:GridViewDataColumn DataMemberBinding="{Binding ID, Mode=OneTime}" /> 
<telerik:GridViewDataColumn DataMemberBinding="{Binding Vehicle, Mode=OneTime}" > 
    <telerik:GridViewColumn.CellEditTemplate> 
        <DataTemplate> 
         <TextBlock Text="Name"></TextBlock> 
        </DataTemplate> 
       </telerik:GridViewColumn.CellEditTemplate> 
      </telerik:GridViewDataColumn> 
    </telerik:RadGridView.Columns> 
</telerik:RadGridView> 

,其中项目是一个ObservableCollection:

public class Source 
{ 
    public int ID {get; set;} 
    public Vehicle Vehicle {get; set;} 
} 

public class Vehicle 
{ 
    public int ID{get; set;} 
    public string Name {get; set;} 
} 

所以正确显示ID列,但车柱是空的...我要去哪里错了?

感谢

编辑使用CellTemplate和不CellEditTemplate我还有同样的问题

 <telerik:GridViewDataColumn DataMemberBinding="{Binding Vehicle, Mode=OneTime}" > 
       <telerik:GridViewColumn.CellTemplate> 
        <DataTemplate> 
         <TextBlock Text="{Binding Name}"></TextBlock> 
        </DataTemplate> 
       </telerik:GridViewColumn.CellTemplate> 
      </telerik:GridViewDataColumn> 

回答

1

假设你的代码被切断&粘贴:您已在拼错VehicleVehilce您源类。

如果你检查你的调试输出窗口,它应该报告任何绑定错误和足够的细节以找到这种错误。

+0

对不起,它没有被切断/过去。在运行时代码的属性名称没关系...仍然有问题 – user756037

+0

好的我找到解决方案 – user756037

+0

@ user756037:小心分享?毕竟这是网站的重点。 –