2009-09-10 59 views
0

在WPF应用程序,数据添加到数据网格不可见的UI在WPF在MVP

我来显示使用数据的网格数据到一个日志窗口..

每个日志消息应该被添加到logwindow并需要显示。

我的XAML是:

<ListView x:Name="lstViewLogWindow" ItemsSource="{Binding}" Height="152" IsSynchronizedWithCurrentItem="True" MouseEnter="lstViewLogWindow_MouseEnter" MouseLeave="lstViewLogWindow_MouseLeave" > 
      <ListView.ItemContainerStyle> 
       <Style TargetType="ListViewItem"> 
        <Setter Property="Foreground" Value="White"/> 
       </Style> 
      </ListView.ItemContainerStyle> 
      <ListView.View> 

       <GridView x:Name="grdViewLogWindow" > 
        <GridViewColumn x:Name="Message" Header="MessageDetails" Width="1000" DisplayMemberBinding="{Binding Path= MessageDetails}"/> 
        <GridViewColumn x:Name="LogDate" Header="DateTime" Width="275" DisplayMemberBinding="{Binding Path= DateTime}" /> 
       </GridView> 
      </ListView.View> 
     </ListView> 

我有一个LogMessage.cs类作为

public class LogMessage 
{ 
    public string Message_Name { get; set; } 
    public DateTime LogTime { get; set; } 
} 

在后面的代码...

public void showmsg(string msg) { 

     List<LogMessage> messages = new List<LogMessage>(); 
    messages.Add(new LogMessage() { LogTime = DateTime.Now, Message_Name = msg }); 
      lstViewLogWindow.DataContext = messages;} 

我能看到“消息”中可用的数据...但我无法在用户界面中看到它...

我演示者_view.showmsg(msg) ........

,但我不能看到数据的诠释,他登录窗口.. 请帮助.. 感谢 拉姆

回答

1

你的ListView的的ItemsSource设置为{捆绑}。但是,您没有显示您设置视图的DataContext的位置。因此,首先,在您的代码隐藏文件中,您需要以下内容:

this.DataContext = messages; 

此外,您的列绑定到不正确的属性名称。目前:

DisplayMemberBinding="{Binding Path= MessageDetails}" 
DisplayMemberBinding="{Binding Path= DateTime}" 

应该是:

DisplayMemberBinding="{Binding Path=Message_Name}" 
DisplayMemberBinding="{Binding Path=LogTime}" 
相关问题