동일한 데이터가 포함되어 있는지 확인 : 데이터 집합 컬럼 완전히 I는 아래와 같은 데이터 세트가
ID Name Data1 Data2
1 MM X 1000
2 ST Y 1000
3 EC Z 1000
4 JT T 1000
내가
DataSet
결합하여
DataGridView
이
DataSet
를 표시한다. 모든 데이터가 유사한 지 여부에 따라
Data2
열의 가시성을 설정하고 싶습니다.
위의 예에서 표시된 데이터가 DataSet
의 모든 요소에 공통적이므로 Data2
열을 숨기고 싶습니다. 그러나 요소 중 하나에 해당 열의 고유 항목이있는 경우 열을 표시해야합니다.
DataSet
을 반복하지 않고이 작업을 수행 할 수 있습니까? 내 DataSet
꽤 큰이며 여러 열에 대해이 검사를 수행하려면 반복하지 않는 것을 선호합니다. 당신은 모든 값이 동일한 것을 알고, 1 개 이상의 서로 다른 값이 있으면
if(dataTable.AsEnumerable().Select(row => row["Data2"]).Distinct().Count() > 1)
{
// Make column invisible
}
:
아니요, 데이터 세트를 한 방향으로 반복해야합니다. – Magnus
dataGrid.Columns [ "Data2"]. Visible = (dataSet.Tables [0] .DefaultView.ToTable (true, "Data2"). Rows.Count! = 1); 이것이 내가 정한 접근법입니다. DataSet의 ToTable() 함수에는 고유 값을 가져 오는 것만 요구하는 플래그가 있습니다. 그래서 나는 하나 이상의 별개의 가치가 나오는지 단순히 확인합니다. –