2009-04-07 4 views
2

해당 ComboBox에 대한 AutoCompleteSource로 사용하기 위해 주어진 PC에서 모든 응용 프로그램 사용에 대해 ComboBox에 입력 된 모든 문자열 목록을 유지 보수하고 싶습니다. 즉, ComboBox에서 "Fred"를 입력하고 데이터를 커밋하고 응용 프로그램을 닫은 다음 응용 프로그램을 다시 열고 ComboBox를 다시 열고 "F"를 입력하고 제안 "Fred"를 수신합니다.여러 세션에서 자동 완성/제안 목록을 유지하는 가장 좋은 방법

메모리에 이러한 목록을 만들고 유지 관리하고 ComboBox 등에 입력 할 때 새 요소를 추가하는 코드를 이미 가지고 있다고 가정하면이 코드를 저장 /로드하는 가장 좋은 방법은 무엇입니까? 세션간에 데이터가 있습니까?

복잡한 요인 :이 응용 프로그램은 OneClick 배포를 통해 배포되며 응용 프로그램이 시작될 때마다 온라인으로 업데이트를 검색합니다. 응용 프로그램이 업데이트되면 업데이트가 완료된 후에도 목록이 남아있는 것이 좋습니다.

도움 주셔서 감사합니다.

답변

2

액세스 수준에 따라 파일을 플랫 파일로 저장하는 것이 가장 쉬운 방법입니다.

  • 옵션 목록을 읽으려면 파일을 읽고 빈 목록이없는 경우이를 반환하십시오.
  • 항목을 추가하려면 파일이 없으면 파일을 만든 다음 옵션을 추가하십시오.

즉, 업데이트가있는 빈 파일을 보내지 않아도 데이터가 남아 있음을 의미합니다.

appears 파일을 데이터 디렉토리에 저장하거나 격리 된 저장소를 사용할 수 있습니다.

+0

안녕하세요,이 파일을 저장할 위치를 알려주시겠습니까? 그 위치가 나 자신에 의해 설정되어 있는지 또는 응용 프로그램 디렉토리에 있는지에 따라 다릅니다. 감사. – Frosty840

+0

나는/var/app_name이라고 말하고 싶지만 나는 * nix 사람이다. MS Windows 사용자는 응용 프로그램에서 파일을 저장할 수있는 장소가 있습니까? 나는 그것이이 시점에서 알려진 예술이라고 생각했을 것입니다. – MarkusQ

+0

ClickOnce 배포는 무시 무시한 영숫자로 지옥에 파일을 저장합니다. 그것은 주로 프로그래머가 제어 할 수없는 .net 프레임 워크의 일부에 의해 제공되는 특별한 설치 방법입니다. 그래서 app 폴더에 직접 파일을 저장하는 것에 대해 약간주의를 기울입니다. – Frosty840

1

기본 설정 인 사용자 설정 (내 프로젝트> 설정> 설정 "사용자"선택)을 사용하면됩니다. 매우 쉽게 검색하고 업데이트 할 수 있습니다. 그리고 광범위한 테스트를 수행하지는 않았지만 응용 프로그램 업데이트를 통해 남아 있다고 생각합니다.

응용 프로그램이 데이터베이스를 사용합니까? 그렇다면 영구 저장을위한 또 다른 옵션이 될 것입니다.

편집
당신이 사용자 설정 옵션으로 이동하기로 결정하는 경우가 여기에 해당 설정 및 ClickOnce를 가진 문제를 해결하는 새로운 question이다.

관련 문제