2009-07-15 1 views
1

여기 내가 달성하려고하는 시나리오가 있습니다. 내 양식에 DataGrid 컨트롤이 있습니다. 나는 선택의 나의 통제로 XCeed Data Grid for .Net를 사용하고있다. DataTable을 통해 DataGrid를 DataSource로 사용하고 있습니다. 그리드를 사용하면 데이터를 열별로 정렬 할 수 있습니다. 동일한 데이터가 Chart 컨트롤에 표시됩니다. 이렇게하면 데이터를 표와 차트로 볼 수 있습니다.데이터 정렬 된 그리드 뷰에서 정렬 된 데이터를 다시 얻으려면 어떻게해야합니까?

내가 알고 싶은 것은 열을 클릭하여 그리드의 데이터를 정렬 한 다음 차트에서 업데이트 된 새 정렬 된 데이터를 볼 수 있다는 것입니다. 일반적으로 말하자면, 그런 일을하는 것에 대해 어떻게 생각하십니까? 어떻게 정렬 된 데이터를 잡고 gridview contorl에서? XCeed Grid 컨트롤로 어떻게 끝내 었는지 알려주는 추가 포인트 :)

고마워!

답변

0

는 그리드에 대한 정렬 이벤트에서 다음을 수행 ... 또는 때마다

 //get data w/ sort expression 
     DataTable dt = (DataTable)gridview1.DataSource; 

     //bind sorted data to another control 
     chartcontrol.datasource = dt.DefaultView.ToTable(); 
     chartcontrol.databind(); 

     //add sorted ids to session to get crazy with 
     if (dt != null) 
     { 
      StringBuilder sb = new StringBuilder(); 
      for (int i = 0; i < dt.Rows.Count; i++) 
      { 
       sb.Append(dt.DefaultView[i]["ID"].ToString() + ","); 
      } 
      if (sb.Length > 0) 
       sb.Remove(sb.Length - 1, 1); 

      Session["SortedIDs"] = sb.ToString(); 
     }