2014-08-27 2 views
1

Windows CE 플랫폼에서 실행되는 Compact Framework 응용 프로그램 [vb.cf]이 있습니다. 런타임에 그리드를 형성하기 위해 내 양식에 여러 번 추가하는 사용자 정의 컨트롤이 있습니다.Compact Framework 3.5에서 사용자 제어 오류 참조

내 사용자 정의 컨트롤의 속성에 액세스하여 설정하려고합니다. 나는이 얻을 이유

Conversion from string "ctr_1" to type integer is not valid???

어떤 이유 :

Dim mod_prop As ctl_mod_table = CType(Me.pnl_table.Controls("ctr_" & icount), ctl_mod_table) 

이 다음과 같은 오류가 발생합니다?

나는 모든 제어 절차를 느리게 사용하고 싶지 않습니다.

+0

컨트롤을 목록에 그냥 두지 않아도 나중에 찾을 필요가없는 이유는 무엇입니까? – Alan

답변

1

Compact Framework에서는 컨트롤을 수동으로 이름별로 검색해야합니다. This SO question has a CF-specific answer.

+0

this.Controls.Find는 cf.net [compact framework]에서 지원하지 않습니다. 이것이 내 기본 문제입니다. : ( – MackieRSA

+0

Chris가 말했듯이 Compact Framework에 대한 구체적인 답변을 살펴보십시오! –

0

Controls(...)은 인덱스 값을 사용하므로 정수입니다. 여기서 문자열 변수 ctr_1을 전달하려고합니다. 이는 명백히 정수가 아닙니다.

컨트롤을 이름으로 액세스해야하는데 Me.pnl_table.Controls("ctr_" & icount) 대신 Me.Controls("ctr_" & icount)을 호출하기 만하면 폼의 컨트롤을 볼 수 있습니다.

+0

감사합니다. 내 사용자 컨트롤이 pnl_table이라는 패널 내부에 있기 때문에 내가 me.pnl_table.controls를 사용하는 이유입니다. 이게 효과가 있니? – MackieRSA

+0

좋은 구현을위한 ctake 응답을 참조하십시오 –

+0

his.Controls.Find는 cf.net [compact framework]에서 지원하지 않습니다. 이것은 나의 근본적인 문제입니다. : - – MackieRSA

관련 문제