Microsoft MVP성태의 닷넷 이야기
ArgumentOutOrRangeException에러 발생 [링크 복사], [링크+제목 복사],
조회: 4650
글쓴 사람
Edun (gygy332 at naver.com)
홈페이지
첨부 파일

안녕하세요!
현재 c#윈폼 개발중인 주니어개발자입니다!

특정 데이터(cd)가 각 제품군으로 분류되어
분류된 row갯수만큼 view의 컬럼 생성 후 view컬럼에 cd_Name을 바인딩 하고 싶습니다.
cd데이터는 'a01_abc' 이런 형식으로 구성되어있어서 cd_Name은 '_'기준으로 잘라내서 얻으려고 합니다.
 
특정 데이터의 코드를

List<strign> cd = new List<string>(); 으로 데이터 리스트 생성 후
foreach (GridColumn column in Datable.Columns)
{
    cd.Add(column.Name.Split('_')[0])
}
cd = cd.Distinct().ToList();
int cdCount = cd.Count;

Split해서 cd_Name을 구하고 난 뒤
view를 생성할 grid를 디자인단이 아닌 코드로 직접 작성하려고합니다.
왜냐하면 분류된 row갯수만큼 동적으로 view가 만들어져야되기 때문입니다.
이후 중복되는 데이터를 제거해주고 동적으로 view를 만들기 위해 해당 갯수를 구해서
cdCount에 넣어줬습니다.

List<gridcontrol> gc = new List<gridcontrol>();으로 gridcontorl 리스트 생성 후
for(int i = 0; i <= cdCount; i++)
{
    string pre = cd[i]; //error
}
위와같이 for문안에 분류된 row갯수만큼 gridview를 만들고자
string pre에 split한 cd를 배열로 넣어주고 싶은데
사진과같은 에러가 발생합니다.

구글링 해도 어디서 부터 잘못되었는지 도통 찾지 못해서 이렇게 질문글을 남깁니다.
도와주시면 감사하겠습니다!! ㅠㅠ








[최초 등록일: ]
[최종 수정일: 2/25/2022]


비밀번호

댓글 작성자
 



2022-02-25 04시46분
cdCount가 cd.Count 값이니, for 루프의 조건을 i <= cdCount로 할 것이 아니라, i < cdConut로 해야 하지 않을까요?

그리고, 지금 디버그 상태로 보이는데, 간단하게 해당 예외가 발생할 때의 i 값을 찍어보면 OutOfRange의 원인이 나올 텐데요... 이상하군요, 감각적으로 알 수 있었을 텐데... 혹시 비주얼 스튜디오의 디버깅 사용법을 모르신다면 아래의 동영상을 참고해 보세요.

"시작하세요 C#" 강의 번외편 #1 - 비주얼 스튜디오 디버그 기능 기초 활용
; https://youtu.be/X3_OXIIDEec
정성태
2022-02-25 04시53분
[Edun] 이상한부분이 부끄러운 사실입다 ㅠㅠ 아래 참고해주신 영상통해 더 공부해보려고요!! 오류에 대한 답변과 부족한 부분 짚어주시고 참고자료 주셔서 정말 감사합니다 !!!!
[guest]

... 31  32  33  34  35  36  37  38  39  [40]  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4854heyh...7/6/20179710
4853heyh...7/5/20179805성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/201711930서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/201711098Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
4850heyh...7/3/201710837성태님 밑에 질문드렸던 오류입니다. [1]파일 다운로드1
4849포플러7/2/201729554C#으로 만든 프로그램이 어느 순간 속도가 느려지거나 멈춤현상이 있습니다. [4]
4848윤진영7/2/201712455Microsoft Visual C++ 6.0 무설치 관련 [1]
4847heyh...6/30/201710440아무리 고민해도 답이 안나와서.. 질문 드립니다 [1]
4846heyh...6/28/201710499Clickonce에서 Clickonce로 변수 전달 [1]
4845heyh...6/26/201710118vb.net 에서 manifest 제거 방법 [1]파일 다운로드1
4844san6/21/20179597part3 pdf파일로 보는데 눈아퍼요.... 활자로 보고싶어요 [2]
4843윤현수6/20/20179836socket통신에 관한 질문입니다. [1]
4842오세운6/7/201710537로그인폼 다시 질문드려요. [1]
4841popo6/7/201710296궁금한사항이 있어 질문 드립니다. [1]
4840윤현수6/5/201710295datagridview에 바인딩시킨 dataset.table에 관련된 질문입니다. [2]파일 다운로드1
4839오세운6/2/201711206로그인폼 만들기 [1]
4838후배5/29/201711937PDF Reader 라이브러리.. [3]
4837KDP5/29/201711436c++ to C# 컨버팅 문의 [2]
4836popo5/26/201714560리플렉션 성능 관련 질문 드립니다. [2]
4835guest5/25/201710319wpf Canvas 질문드립니다. [1]
4834부탁드립...5/19/201711203익스체인지 서버 구동중 인증서를 받는 과정에서오류가 납니다 [1]
4833안종윤5/18/201711588winform을 Web Browser에 붙일 수 있는지요? [1]
4832guest5/17/201711065c# UDP socket예제 실행방법 [3]
4831guest5/15/201713474WPF .net 3.5에서 TextBox 한글 문제 [3]
4830초보자5/7/201718373프로그램 비정상 종료 메시지 창 없애는 방법 [4]
4829윤현수4/26/201714795System.Text.Encoding 질문 [1]
... 31  32  33  34  35  36  37  38  39  [40]  41  42  43  44  45  ...