2015-07-06 5 views
0

Мне нужно получить значение Childwindow для UserControl в приложении silverlight. Я попытался сделать это ниже, я получаю нулевое значение на странице Usercontrol.Получить значение от ChildWindow до UserControl Страница

ChildWindow

public partial class QE : ChildWindow 
{ 

     ATest ae= new ATest(); 
     public void OKButton_Click(object sender, RoutedEventArgs e) 
     { 
      ae.Q = "TestValue"; 
      this.DialogResult = true; 

     } 
} 

Класс

public partial class ATest : UserControl 
{ 
     public string Q { get; set; } 

     public void asdf() 
     { 
      string checkvalue = Q.ToString(); 
     }  
} 

Мне нужно, чтобы окна ребенка "TestValue" в checkvalue переменной UserControl страницы? Как я могу это сделать?

ответ

0

получить значение из childwindow в UserControl Page, выполните следующие действия, как,

Использование государственной собственности в App.xaml

Он действует как объявить статическую глобальную переменную в «App.xaml.cs» и используя его из любой части приложения.

Объявите общественную собственность в "App.xaml.cs"

общественности строку MyName {получить; задавать; }

Теперь мы можем получить доступ к этому свойству «MyName» из любого места приложения, используя объект «App.Current».

Код для установки значения MyName в Page1.xaml

private void btnGo_Click(object sender, RoutedEventArgs e) 
    { 
     var obj = App.Current as App; 
     obj.MyName = "dpkshr"; 
     this.NavigationService.Navigate(new Uri("/frmMap.xaml", UriKind.Relative)); 
    } 

код, чтобы получить значение MyName в Page2.xaml

private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e) 
    { 
     var obj = App.Current as App; 
     MessageBox.Show(obj.MyName); 
    } 
Смежные вопросы