Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 更多绑定到ListView_Wpf_Xaml - Fatal编程技术网

Wpf 更多绑定到ListView

Wpf 更多绑定到ListView,wpf,xaml,Wpf,Xaml,原来的问题就在这里。 我已经修复了一个问题,现在可以看到列名了。然而,我无法理解绑定 输出窗口中的错误: System.Windows.Data Error: 4 : Cannot find source for binding with reference 'ElementName=This'. BindingExpression:Path=LogView.LogEntries; DataItem=null; target element is 'ListView' (Name='Lo

原来的问题就在这里。

我已经修复了一个问题,现在可以看到列名了。然而,我无法理解绑定

输出窗口中的错误:

 System.Windows.Data Error: 4 : Cannot find source for binding with reference 
'ElementName=This'. BindingExpression:Path=LogView.LogEntries; DataItem=null; target 
element is 'ListView' (Name='LoggingListView'); target property is 'ItemsSource' (type     'IEnumerable')
来自LogFileWindow.XAML的最新尝试的XAML片段。我可以发布更多信息,但尽量减少混乱:

   <ListView Name="LoggingListView" ItemsSource="{Binding ElementName=This,  Path=LogView.LogEntries}  ">
                        <ListView.View>
                        <GridView>
                            <GridViewColumn Header="Date" DisplayMemberBinding="{Binding Path=Date}"></GridViewColumn>
                            <GridViewColumn Header="Time" DisplayMemberBinding="{Binding Path=Time}"></GridViewColumn>
                            <GridViewColumn Header="Event" DisplayMemberBinding="{Binding Path=Event}"></GridViewColumn>
                        </GridView>
                        </ListView.View>
                    </ListView>

}Visual Studio的错误是不言而喻的:您试图使用ElementName进行绑定,并使用Name=“This”搜索可视元素(假定在XAML可视树中定义)。没有这样的事情(显然,我说不出来,因为你没有发布完整的XAML树)


如果要将一个可视元素属性绑定到同一元素中的另一个属性,您可以使用

,问题是…?为什么绑定不起作用。如果它是工作,为什么我会张贴此请求帮助?“我有一个零件在工作”和“我弄不懂装订”这两个词不足以解释这个问题吗?谢谢。我认为“This”是指窗口本身的关键字。
public class LogEntryViewModel : INotifyPropertyChanged
{
   public LogEntryViewModel(LogFileEntry le)
    {
        _date = le.Date;
        _time = le.Time;
        _event = le.Event;
    }     
    #region Members
    private string _date;
    public string Date
    {
        get { return _date; }
        set {_date = value;
        RaisePropertyChanged("Date");           
        }
    }

    private string _time;
    public string Time
    {
        get { return _time; }
        set
        {
            _time = value;
            RaisePropertyChanged("Time");

        }
    }

    private string _event;
    public string Event
    {
        get { return _event; }
        set { _event = value;
        RaisePropertyChanged("Event");
        }
    }
    private LogFileEntry _le;
    #endregion

    #region INotifyPropertyChanged Members

    public event PropertyChangedEventHandler PropertyChanged;

    #endregion

    private void RaisePropertyChanged(string propertyName)
    {
        // take a copy to prevent thread issues
        PropertyChangedEventHandler handler = PropertyChanged;
        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(propertyName));
        }
    }
}

public class LogViewModel :ObservableCollection<LogEntryViewModel>
{
       private ObservableCollection<LogEntryViewModel> _LogEntries;
    public ObservableCollection<LogEntryViewModel> LogEntries = new    
  ObservableCollection<LogEntryViewModel>();

}
public partial class LogFileWindow : Window
{
    public  LogViewModel LogView = new LogViewModel();