바보 같은 느낌이 드는 이유는 뭔가 쉽게 누락되었거나 tryParse 함수를 전혀 이해하지 못하기 때문입니다.int.TryParse 결과의 값 비교
laymans 용어로, 다음 코드에서 수행하려는 작업은 DataGridview의 모든 열을 통해 코드 루프를 수행하는 것입니다. 열 이름의 마지막 2 문자가 숫자 인 경우, 마지막 2 문자 (int.TryParse 사용)의 숫자 값을 다른 변수와 비교하려고합니다. 근본적으로 나는 모든 컬럼을 오직 마지막 2 자리가 정수로 변환 될 수 있고 그 정수가 내가 비교할 수있는 것보다 더 큰 칼럼에 대해서만 excpet를 읽길 원합니다.
아래 코드는 int_tryParse 전에 단계 설정 변수를 단계별로 설정하려고 시도 했으므로 아마 약간 평범 할 것입니다. 나중에 수정할 수 있습니다.
C#을, VS2008 :
이foreach (DataGridViewColumn col in grd1.Columns)
{
string myCol = col.Name;
int myColLength = col.Name.Length;
string myColMonth = myCol.Substring(myColLength - 2);
if (int.TryParse(myColMonth, out myColMonth) <= myMostRecentActualMonth)
{
col.ReadOnly = true;
}
else
{
col.ReadOnly = false;
}
}
감사 마이크. StackOverflow에가 있기 때문입니다에 내가 질문을 게시 왜 사실 큰 이유 - 당신은 내가 (한숨)를 게시 한 후 나는 10 분을 알아 낸 것이 작업의 40분 –
@RyanWard 후 물론 알고 있기 때문에 기본적으로 나는 비슷한 솔루션을 함께했다 그것은 나 자신의 30 초 후에 그것을 이해할 것을 보증한다. –