WPF DataGrid未绑定到自定义类型属性

时间:2012-10-23 00:48:50

标签: c# wpf xaml data-binding mvvm

我的类型看起来像这样:

public struct LogData
{
    public DateTime Time;
    public string Area;
    public string Message;
}

在我的数据上下文(MVVM)中,我将ObservableCollection<LogData>公开为Log

出于某种原因,我无法显示任何现场数据(时间,区域,消息)。记录时正确显示行,但数据网格中的值为空。

<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding Log}" SelectionMode="Single" CanUserSortColumns="True">
  <DataGrid.Columns>
    <DataGridTextColumn Header="Time" Binding="{Binding Time}" IsReadOnly="True" />
    <DataGridTextColumn Header="Area" Binding="{Binding Area}" IsReadOnly="True" />
    <DataGridTextColumn Header="Message" Binding="{Binding Message}" IsReadOnly="True" />
  </DataGrid.Columns>
</DataGrid>

知道为什么字段显示为空白?

1 个答案:

答案 0 :(得分:2)

您只能绑定到公共属性(请参阅Binding Sources Overview中的其他特征部分),例如

public DateTime Time { get; set; }