2011-10-18 4 views
0

이름'App '이 (가) 현재 컨텍스트에 없습니다.Silverlight App 개체가 존재하지 않습니다. '오류

어떻게 가능합니까? SketchFlow 앱을 프로덕션 Silverlight로 변환 할 때 초기화 코드가 MainPage() 유형과 다릅니다. 그들은 당신이 System.Windows.Controls.Frame()를 통해 초기화 코드를 수행하도록 지시 :

private void Application_Startup(object sender, StartupEventArgs e) 
{ 
    this.RootVisual = new System.Windows.Controls.Frame() { Source = new Uri("/MyAppScreen.xaml", UriKind.Relative) }; 

} 
public static string ValueFromHome = 
"A Value on Home page"; 

목표는 내가 길 아래에 다양한 화면에서 액세스 할 수 있도록 App 개체 내에서 공공 VAR을 설정했다


리소스 데이터에 액세스하려면 App 객체를 호출해야합니다. 아래에서와 같이 정확하다고 생각하십니까? 그래서 이것은 도움이되지 않을 것입니다.

string color = App.Current.Resources["customColor"].ToString(); 

답변

0

문자열 만 저장하는 경우 리소스 파일을 사용하십시오. 그런 다음 필요하다면 번역 할 수 있습니다. EDIT (리소스 파일 사용법 설명) : 리소스에 액세스하려면 먼저 프로젝트에 .resx 파일을 만듭니다 (이름을 MainResource.resx라고 가정). 액세스 수정 자 드롭 다운을 public으로 변경하고 이름에 문자열 : ValueFromHome 및 값 : "홈 페이지의 값". 는 그런 다음 필요한 경우 자원의 네임 스페이스에 대한 사용을 추가하고과 같이 직접 호출하여 값을 얻을 수 있습니다 :

string value = MainResource.ValueFromHome; 

나는 주위를 어슬렁 정적 변수의 경계 것. 어쩌면 MainViewModel을 사용하여 해당 값을 저장할 수 있습니다. 정적 변수가 정말로 필요한 경우 프로젝트에 새로운 정적 클래스를 만들고 해당 클래스에 ValueFromHome 속성을 추가하십시오. Silverlight 구조이며 모든 영역에서 사용할 수 있도록 제작되지 않았기 때문에 응용 프로그램을 사용할 수 없습니다.

+0

아니요, 정적 데이터를 저장하지 않으므로 값을 할당하고 나중에 검색해야합니다. 그렇다면 왜 App() 객체 오류가 발생합니까? – user1001895

+0

이 빌드 또는 런타임 오류입니까? 프로젝트에 app.xaml.cs가 있습니까? 당신의 설명에서 말하기는 어렵습니다. 몇 줄의 코드가 도움이 될 것입니다. – Aligned

+0

코드 스트링 색상 = App.Current.Resources [ "customColor"]. ToString(); – user1001895

관련 문제