2017-09-14 2 views
0

채울 xtragrid가 있고 언 바운드 열이 2 개 있습니다. 다행히 필터를 열 때 필터링의 팝업이 올바르게 표시되지만, 값을 두 번 클릭하면 null이 아닌 예외가 발생합니다. 나는 예외가 어디에 있는지를 발견 할 수 있었고 그것은 현재 행으로부터 현재 객체를 얻으려고 시도하고 객체가 null 인 내 메소드 CustomColumnUnboundData에있다. 너 나 좀 도와 줄 수있어? 내가 도대체 ​​뭘 잘못하고있는 겁니까 ? e.ListSourceRowIndex 또는 GetRow()가 필터링에 작동하지 않는 것 같습니다 ...devexpress - winforms - xtragrid - 언 바운드 열 데이터 필터링 NullReference 예외를 throw합니다.

 private void gridView1_CustomUnboundColumnData(object sender, CustomColumnDataEventArgs e) 
    { 
     GridView gridView = (GridView)sender; 

     int dataSourceIndex = e.ListSourceRowIndex; 

     Person person = (Person)gridView.GetRow(dataSourceIndex); 

     if (e.Column.FieldName == "name" && e.IsGetData) 
     { 
      e.Value = person.PersonKey.Name; 
     } 

     if (e.Column.FieldName == "surname" && e.IsGetData) 
     { 
      e.Value = person.PersonKey.Surname; 
     } 
    } 

답변

0

해결되었습니다.

private void gridView1_CustomUnboundColumnData(object sender, CustomColumnDataEventArgs e) 
     { 
      GridView gridView = (GridView)sender; 

      Person person = e.Row as Person; 
//... 
} 
관련 문제