首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

WPF DataGrid 绑定到 ObservableCollection 没有反应解决方法

2014-01-12 
WPF DataGrid 绑定到 ObservableCollection 没有反应我创建了一个用户控件。名字为nodesSetCtrl列表的源,绑

WPF DataGrid 绑定到 ObservableCollection 没有反应
我创建了一个用户控件。名字为nodesSetCtrl
列表的源,绑定到用户控件本身的NVS4Binding.NodeList
NodeList的类型为ObservableCollection<Node>

 <DataGrid Name="dtgNodesInfo" 
ItemsSource="{Binding ElementName=nodesSetCtrl, 
                      Path=NVS4Binding.NodeList, 
                      Converter={StaticResource testConverter}}">
</DataGrid>


其中testConverter的代码如下:对绑定进行测试。
class TestConverter : IValueConverter
    {
        public object Convert(object values, Type targetType, object parameter, CultureInfo culture)
        {
            Debug.WriteLine("Binding is in");
            return values;//断点
        }
        public object ConvertBack(object value, Type targetTypes, object parameter, CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }


然后对于DataGrid的列为:

 <DataGrid.Columns>
                <DataGridTextColumn Header="网络号" 
                                    Binding="{Binding Path=Net, 
                                                      Converter={StaticResource testConverter}}"/> 
                <DataGridTextColumn Header="短地址" 
                                    Binding="{Binding Path=Address, 
                                                      Converter={StaticResource testConverter}}"/>
</DataGrid.Columns>


其中的Net,Address分别为Node的属性。
在运行时发现DataGrid的绑定是对的。断点处可以获得节点列表。有20个Node数据。
但是<DataGrid.Columns>的绑定不会命中断点。列表没有数据显示出来。
我给Node中的Net和Address都实现了INotifyPropertyChanged接口。还是不行。
有没有人做过这类的绑定。求指点。。。。。。。
[解决办法]
贴出来你的NodesSetCtrl以及Node类看看

热点排行