2014-09-16 2 views
0

Form.WindowState는 FormWindowState 열거 형을 사용하여 값을 "minimized", "maximized", "normal"로 설정합니다. 양식을 닫을 때 나는이 상태를 정수형으로 캐스팅하여 내 보냅니다. 내가 FormWindowState에 INT에서이 암시 적 변환을 허용하지Option Strict On을 FormWindowState에 할당

Option Strict On 

을 사용하고 있기 때문에 나는

Me.WindowState = CInt(getMySetting()) 

를 사용하여 양식을 다시로드에이를 할당 할 수 없습니다. FormWindowState에는 사용할 수있는 생성자가 없으므로 해당 Integer를 사용하여 일치하는 FormWindowState를 어떻게 만들 수 있는지 알 수 없습니다. Option Strict를 끄는 것을 제외하고는 어떤 제안이 있습니까? 고맙습니다!

답변

0

이 작동합니다 :

Me.WindowState = CType(CInt(getMySetting()), FormWindowState) 

을 당신은 IntegerFormWindowState

그러나보다 강력한/읽을 수있는 방법은 FowmWindowState -enum을 사용하는 것입니다 (유효한 값이 있다고 추정)를 캐스팅해야 직접 설정에서. 너 그렇게 할 수있어. 당신은 올바른 네임 스페이스에서 찾을 (아래 그림 참조)이 있습니다

enter image description here

지금이 강력한 형식의 코드는 작동 :

Me.WindowState = My.Settings.DefWindowState 
+0

가에서는 CType 작동으로 변환, 감사합니다! 나는 당신이 당신의 제안으로 무엇을 의미하는지 확실히 모르겠다 : 나는 어떤 WindowState (외부 파일에서 상태를 검색 할 것인가)를 알지 못하기 때문에, 나는 그것을 설정에서 정확하게 지정할 수 없다. –

+0

@HW : 두 번째 부분은 무시할 수 있습니다. 나는 당신이 ['My.Settings'] (http://msdn.microsoft.com/en-us/library/saa62613.aspx)에서 그것을 읽고 있다고 생각했습니다. –

관련 문제