pageA에는 pageBSilverlight : 페이지간에 복잡한 개체 전달
private void Link1_Click_1(object sender, RoutedEventArgs e)
{
HyperlinkButton btn = sender as HyperlinkButton;
string url = btn.Tag.ToString();
this.mainFrame.Navigate(new Uri(url, UriKind.Relative));
}
에 링크되는 HyperlinkButton이 있습니다. pageB에서 pageA에서 COMPLEX 객체를 만들려면 어떻게해야합니까?
어느 쪽이든 내가 pageB를 다시 만들거나 pageA에 공개 속성으로 만들면 그것을 전달할 수 있습니다.
App.xaml에 개체를 추가하여 어디서나 사용할 수 있지만 가장 좋은 방법이라고 생각하지 않습니다.
작동하지만 정적 변수를 사용하지 않을 것입니다. 다른 방법이 있어야합니까? – Billy
@Billy, 정적 변수를 사용하는 것은 나쁘지 않습니다. 한 세트의 전역 변수가 거의 모든 시스템에서 항상 사용됩니다. 그렇지 않으면 지나치게 많은 (마샬링) 코드를 처리하게됩니다. 그러나 사용시기와 사용하지 않을 때는 항상 상충 관계가 있습니다. 하지만 귀하의 경우, 객체가 여러 클래스를 통해 액세스해야 할 때 전역 정적 변수에 넣는 것이 좋습니다. –
Akash와 동의합니다.정적 변수에 문제가있는 경우 App.xaml.cs의 Dictionary 유형 속성을 노출 한 다음 임의의 페이지에서 값을 가져 오거나 설정할 수 있습니다 (예 : ). App ap =) Application.Current; ap.YourProperty = value; –
amazedsaint