Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: Lấy dữ liệu khi DataGridview thay đổi như thế nào?

  1. #1
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    Mặc định Lấy dữ liệu khi DataGridview thay đổi như thế nào?

    em có 1 cái DataGridview làm sao em có thể lấy được dữ liệu thay đổi trên dataGridview được ạ ,
    - tức là em dùng chức năng search dữ liệu trên dataGridview bị thay đổi và em cần lấy dữ liệu vừa mới search được đó ntn a. xin chỉ bảo

  2. #2
    Ngày gia nhập
    06 2010
    Bài viết
    10

    Trích dẫn Nguyên bản được gửi bởi nobita8x Xem bài viết
    em có 1 cái DataGridview làm sao em có thể lấy được dữ liệu thay đổi trên dataGridview được ạ ,
    - tức là em dùng chức năng search dữ liệu trên dataGridview bị thay đổi và em cần lấy dữ liệu vừa mới search được đó ntn a. xin chỉ bảo
    Không hiểu ý bạn hỏi lắm. Nếu muốn update dữ liệu sau khi edit trên grid, bạn duyệt lại DataSource của GridView (DataTable hay List):
    Visual C# Code:
    1. DataTable dt = (DataTable)grdCPhong.DataSource;
    2. foreach (DataRow row in dt.Rows)
    3. {
    4.      .....// code của bạn
    5. }
    Thân ^^

  3. #3
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    cảm ơn bạn...cái DataSource lấy về như cách của bạn là cái dữ liệu đầu tiên khi ta gán dữ liệu cho Datagridview, cái mình cần lấy là dữ liệu nằm trong khoảng DataSource đó cơ,để dễ hình dung mình vd là có 10 phần tử hiện thị trên DataGridview sau khi dùng chức năng tìm kiếm thì chỉ còn hiện thị 3 phần tử trên DataGridview và mình cần lấy 3 phần từ đó cơ.

  4. #4
    Ngày gia nhập
    06 2011
    Bài viết
    277

    Trích dẫn Nguyên bản được gửi bởi nobita8x Xem bài viết
    cảm ơn bạn...cái DataSource lấy về như cách của bạn là cái dữ liệu đầu tiên khi ta gán dữ liệu cho Datagridview, cái mình cần lấy là dữ liệu nằm trong khoảng DataSource đó cơ,để dễ hình dung mình vd là có 10 phần tử hiện thị trên DataGridview sau khi dùng chức năng tìm kiếm thì chỉ còn hiện thị 3 phần tử trên DataGridview và mình cần lấy 3 phần từ đó cơ.
    Hình như bạn nghĩ sai đó chứ!!!
    Khi bạn tìm kiếm ra 3 phần tử thì bạn đã gán lại datasource cho datagridview là 3 phần tử. thì lúc đó datagridview chỉ chứa có 3 phần tử chứ mấy!!!

  5. #5
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    đây là đoạn code mình lấy về trên DataGridview,xem trên lưới chỗ dtv thì có 3 phần tử nhưng khi Click vào chỗ Table xem thì lại có 10 phần từ
    PHP Code:
    DataView dtv = (DataView)dtGview.DataSource;
    for (
    int i 0dtv.Table.Rows.Counti++)
    {
         
    //to do st...


  6. #6
    Ngày gia nhập
    06 2009
    Bài viết
    41

    Mặc định Lấy dữ liệu khi DataGridview thay đổi như thế nào?

    Trích dẫn Nguyên bản được gửi bởi nobita8x Xem bài viết
    đây là đoạn code mình lấy về trên DataGridview,xem trên lưới chỗ dtv thì có 3 phần tử nhưng khi Click vào chỗ Table xem thì lại có 10 phần từ
    PHP Code:
    DataView dtv = (DataView)dtGview.DataSource;
    for (
    int i 0dtv.Table.Rows.Counti++)
    {
         
    //to do st...

    Vậy vấn đề ở hàm tìm kiếm của bạn rồi. Khi gán giá trị cho datagridview trước tiên bạn phải gán datasource của nó bằng null cái đã, rồi clear nó cái cho chắc ăn rồi tạo cái mới. Nếu hem được thì up code lên anh em tham khảo, giúp cho.
    Yêu có nghĩa là không bao giờ nói hối tiếc

  7. #7
    Ngày gia nhập
    06 2011
    Bài viết
    277

    Trích dẫn Nguyên bản được gửi bởi nobita8x Xem bài viết
    đây là đoạn code mình lấy về trên DataGridview,xem trên lưới chỗ dtv thì có 3 phần tử nhưng khi Click vào chỗ Table xem thì lại có 10 phần từ
    PHP Code:
    DataView dtv = (DataView)dtGview.DataSource;
    for (
    int i 0dtv.Table.Rows.Counti++)
    {
         
    //to do st...

    Thế thì bạn đừng lấy dtGview.DataSource nữa. Mà lấy thẳng cái dtGview.Rows.Count lun xem sao???

    Nhưng mình nghĩ là do lúc bạn gán cái datagridview trong hàm tìm kiếm có vấn đề rùi!!!

  8. #8
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    mình không dùng câu lệnh truy vấn để tìm kiếm mình dùng bộ lọc RowFilter của Dataview
    PHP Code:
            private string getQuery(string s)
            {
                try
                {
                    
    string q "";
                    if (
    s.Equals("'"))
                        
    s.Replace("'""");
                    foreach (
    DataColumn column in dtView.Table.Columns)
                    {
                        
    string colName column.ColumnName;
                        if (
    column.DataType.Name.ToUpper().Equals("STRING"))
                        {
                            
    string s2 colName " like '%" "%'";
                            if (
    string.IsNullOrEmpty(q))
                            {
                                
    s2;
                            }
                            else
                            {
                                
    " OR " s2;
                            }
                        }
                        }
                    return 
    q;
                }
                catch (
    Exception ex) { throw ex; }
            }
    // phuơng thức thực thi chức năng search
            
    public void search(string s)
            {
                
    dtView.RowFilter getQuery(s);
            } 
            private 
    DataView dtView;
    // set giá trị hiển thị trên DataGridview
            
    internal Dictionary<objectIBaseEntitysetSource
            
    {
                
    get
                
    {
                    return 
    null;
                }
                
    set
                
    {
                    try
                    {
                        
    dtView getDataView(value); 
                        
    this.DataSource dtView;
                    }
                    catch (
    Exception ex)
                    {
                        
    logFile.logFileMessage(ex.Message,"ShOpOnline",this.Name,"setSource");
                        return;
                    }
                }
            } 

  9. #9
    Ngày gia nhập
    06 2011
    Bài viết
    277

    Vậy là chắc do bạn gán lại cái datasource cũ rùi!!!

    Bạn thử ko gán datasource mà lấy mấy dòng hiện có thử??

  10. #10
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    ý bạn là sao mình không hiểu rõ lắm, nếu không gán DataSource thì dữ liệu đâu có để mà RowFilter thực hiện việc lọc dữ liệu được chứ

Các đề tài tương tự

  1. Thay Đổi Vị trí dòng trong datagridview như thế nào?
    Gửi bởi wintervt trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 26-09-2012, 09:14 PM
  2. Xử lý thay đổi giá trị của 1 ô trong DataGridView?
    Gửi bởi nguyenletri trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 2
    Bài viết cuối: 12-01-2012, 10:52 AM
  3. ADO.NET Thay đổi màu trên DataGridView như thế nào ?
    Gửi bởi huuphat trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 22-11-2011, 10:47 AM
  4. Thay đổi chiều cao của dòng trong datagridview như thế nào?
    Gửi bởi dotritiep trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 15-09-2011, 09:01 AM
  5. Kiểm tra dữ liệu đã thay đổi từ datagridview
    Gửi bởi diepnghitinh trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 21-03-2011, 10:47 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn