【发布时间】:2014-04-26 13:05:09
【问题描述】:
我有一个数据网格:
<DataGrid Name="messageGrid">
<DataGridTextColumn Header="Revision" Binding="{Binding Message.Revision}"></DataGridTextColumn>
<DataGridTextColumn Header="Opcode" Binding="{Binding Message.Opcode}"></DataGridTextColumn>
<DataGridTextColumn Header="Reason" Binding="{Binding Message.Reason}"></DataGridTextColumn>
<DataGridTextColumn Header="Reaction" Binding="{Binding Message.Reaction}"></DataGridTextColumn>
<DataGridTextColumn Header="Projects" Binding="{Binding Message.Projects}"></DataGridTextColumn>
<DataGridTextColumn Header="Links" Binding="{Binding Message.Links}"></DataGridTextColumn>
<DataGridTextColumn Header="Notes" Binding="{Binding Message.Notes}"></DataGridTextColumn>
</DataGrid>
在预览中我没有看到我想看到的列(修订、操作码等),并且当我运行程序时我没有任何列或数据,为什么会发生这种情况?
附注 我在 Message.Revision 中有数据,等等我检查了
编辑:
我拥有用作项目源的 Message 属性的视图模型:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections.ObjectModel;
using System.Windows.Input;
using YogevAfekaRAPAT.YNIDS.Helpers;
using System.Diagnostics;
using System.Data;
namespace YogevAfekaRAPAT.YNIDS.ViewModels
{
public class MessageDetailsViewModel : NotificationObject
{
#region Private Data Members
private Model.Message message;
private ObservableCollection<Model.MType> types;
//private FileManager.fileManager fileManager;
private Logger.Logger logger;
#endregion
#region Properties
#region Types
private ObservableCollection<Model.MType> _types;
public ObservableCollection<Model.MType> Types
{
get { return _types; }
set
{
if (_types != value)
{
_types = value;
}
}
}
#endregion
#region Message
public Model.Message Message
{
get
{
return message;
}
set
{
if (message == value)
{
return;
}
message = value;
RaisePropertyChanged(() => Message);
}
}
#endregion
#endregion
#region Ctor
public MessageDetailsViewModel(Model.Network network, String messageName)
{
fileManager = FileManager.fileManager.getFileManager();
//Message = network
Message = network.getMessageFromName(messageName);
Debug.WriteLine("Inside: public MessageDetailsViewModel(Model.Network network, String messageName) messageName = " + messageName + " Message.Desc = " + Message.Opcode);
}
#endregion
}
}
【问题讨论】:
标签: c# wpf data-binding datagrid