解决方案 »

  1.   

    因为DataTable 没有实现 INotifyPropertyChanged接口。
    不能实现 数据源值改变了,通知到UI上显示。
      

  2.   

    你可以直接在后台 赋值
    ListView1.ItemsSource = dt;
      

  3.   


    private DataTable dt = new DataTable();换成public DataTable dt {get;set;}
      

  4.   

    看错了  你没绑定....private void changeRow(object o, ElapsedEventArgs e)    
        {       
          if(i<8)     
           {        
            dt.Rows.Add(i, "2", "3");          
          i++;         
       }     
     listView1.DataContext = dt;
       }
      

  5.   

    listView1.DataContext = dt;   这样写是不对的。这里的DataContext  数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。
      

  6.   

    listView1.DataContext = dt;   这样写是不对的。这里的DataContext  数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。
    我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
    那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
    你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
      

  7.   

     你的数据源没有实现INotifyPropertyChanged接口。所以数据源改变了,没有通知到界面
      

  8.   

    listView1.DataContext = dt;   这样写是不对的。这里的DataContext  数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。
    我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
    那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
    你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
    建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。
      

  9.   

    listView1.DataContext = dt;   这样写是不对的。这里的DataContext  数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。
    我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
    那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
    你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
    建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。
    你说的那个ObservableCollection 太难用了,好吧我自己解决了。
    是用的仍然是这个方法,但是添加了一个
     private void updateData()
            {
                DataTable _dt = dt.Copy();
                InvokeUpdateDataTable(_dt);
            }
    的方法,然后调用该方法。不过仍然谢谢你。
      

  10.   

    listView1.DataContext = dt;   这样写是不对的。这里的DataContext  数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。
    我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
    那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
    你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
    建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。
    你说的那个ObservableCollection 太难用了,好吧我自己解决了。
    是用的仍然是这个方法,但是添加了一个
     private void updateData()
            {
                DataTable _dt = dt.Copy();
                InvokeUpdateDataTable(_dt);
            }
    的方法,然后调用该方法。不过仍然谢谢你。
    ObservableCollection 难用??不是吧,我感觉挺好用的。不过还是恭喜lz解决问题。