프로젝트> MyProject 속성> 설정에서 MyDouble이라는 이중 설정 형식의 응용 프로그램 설정이 있습니다. 범위는 사용자이고 기본값은 1.5입니다.WinForms 응용 프로그램 설정이 지정되어 있지 않습니다.
전체 응용 프로그램을 살펴보고 값을 표시하는 MessageBoxes를 보았습니다. 이제 클래스 (Form1) 수준 변수를 설정하려고하는 위치를 제외하고 모든 용도를 주석으로 처리했습니다. 이 모양은 다음과 같습니다.
double myDouble = Properties.Settings.Default.MyDouble;
값은 항상 0입니다. MessageBox myDouble 또는 응용 프로그램을 설정하면 결과는 0입니다.
일부 응용 프로그램 설정이 작동합니다. Form1_Shown 이벤트에서 두 개의 메시지 상자를 호출했습니다.
Properties.Settings.Default.MyDouble.ToString()
을 다른 용도 : 하나는 사용
Properties.Settings.Default.MyInt.ToString()
두번째 출력 올바른 값.
이 프로젝트는 C#으로 작성된 WinForms 응용 프로그램입니다. Windows 10 및 Visual Studio 2017 사용. 이 프로젝트의 양식은 이전 프로젝트에서 복사되었지만 영향을 미칠 수 있다고 생각하지 않습니다. 이전 프로젝트의 가치는 동일했습니다. 나는이 응용 프로그램 설정을 직접 입력했습니다. 맞춤법이 올바른지 다시 확인했습니다. 설치 프로젝트를 삭제했습니다. 솔루션을 정리하고 다시 만들었습니다. app.config 파일도 확인했습니다. 나는 틀린 아무것도 보지 않는다. 여기에 있습니다 :
<userSettings>
<MyProject.Properties.Settings>
<setting name="MyDouble" serializeAs="String">
<value>1.5</value>
</setting>
</MyProject.Properties.Settings>
</userSettings>
아무도 아이디어가 없으며이를 해결하는 방법이 있습니까?
당신이 설정의 범위를 확인했다 Managing Application Settings (.NET)이 대답 :
은이 페이지를 참조하십시오? – user12345@ user12345 했어. 내 질문에 사용자 범위가 있음을 반영하도록 업데이트했습니다. 모든 응용 프로그램 설정에는 사용자 범위가 있습니다. – DavidG
기본값이 1.5이고 값이 0 일 때.0이면 설정을 적어도 한 번 이상 성공적으로 저장했습니다. 그것은 여러분이 좋아하는 가치가 아니라는 것입니다. user.config 파일을 편집하여 (일시적으로 발생하는) 문제를 해결할 수 있습니다. c : \ users \ yourname \ appdata \ local \ projectname \ blablabla에서 쉽게 찾을 수 없습니다. –