MY 응용 프로그램에는 3 페이지 (간단한 선택이 이루어진 곳에서는 한 개의 MainWindow와 2 페이지)가 있습니다.동일한 창에서보기 전환 페이지의 새 인스턴스를 만들지 않고 WPF
현재 다음 네비게이션 구조를 사용하여 페이지 http://azerdark.wordpress.com/2010/04/23/multi-page-application-in-wpf/ 사이를 전환합니다. 기본적으로 인터페이스를 사용하여 페이지 참조를 전달하고 새 인스턴스를 만듭니다.
아이디어는 한 번에 하나의 창만 열 수 있다는 것입니다. 예를 들어 페이지 A에서 B로 이동하면 B가 A의 내용을 바꿉니다. 순서는 항상 A -> B -> C -> A (기본 창으로 돌아 가기) 또는 A -> B -> A.입니다.
모든 내용이 항상 1 개의 창에 표시됩니다. 내 현재 솔루션으로 나는 페이지의 새로운 인스턴스를 인스턴스화 할 때마다 (예를 들어 A -> B -> A는 결과로 2x New PageA()를가집니다.)
차례 차례로 난 정말 안 좋아하는 정적 메서드와 클래스를 많이 사용하는 데에.
내 현재 응용 프로그램 탐색 구조의 전체 점검을 필요로하지 않습니다 이것에 대한 더 나은 솔루션이 있습니까? 내 현재에솔루션 정적 인 ObversableCollection 목록을 사용하여 동적으로 생성되는 여러 컨트롤을 기억하므로 페이지 A (mainWindow)로 돌아갈 때 모든 것이 동일하게 유지됩니다.
미리 감사드립니다.
'this.Content = nextPage;'가 잘못되었을 수 있습니다. 현재 페이지가 범위를 벗어나 가비지 수집기에 의해 처리되지 않으면 실행되지 않으므로 동일한 페이지의 인스턴스가 실제로는 없을 것입니다. 당신이 사용하는 솔루션은 내게 꽤 좋은 것 같습니다 –