【问题标题】:WPF-Frame navigate to same page only works onceWPF-Frame 导航到同一页面只工作一次
【发布时间】:2014-08-09 15:24:00
【问题描述】:

在此页面中,您可以添加项目。现在您按“保存”添加另一个。代码如下:

private void Btn_Save_Click(object sender, RoutedEventArgs e)
{
  // Adding the item to DB and List      
  MainData.MainDataItem MDI_Temp = new MainData.MainDataItem();

  MDI_Temp.Int_AF = Convert.ToInt32(Tb_AF.Text);
  MDI_Temp.Int_HO = Convert.ToInt32(Tb_HO.Text);
  MDI_Temp.Int_ST = Convert.ToInt32(Tb_ST.Text);
  MDI_Temp.Int_STD = Convert.ToInt32(Tb_STD.Text);
  MDI_Temp.Int_DIA = Convert.ToInt32(Tb_DIA.Text);
  MDI_Temp.Int_ECK = Convert.ToInt32(Tb_ECK.Text);
  MDI_Temp.Int_MID = ((HelperClasses.Main_VM)this.DataContext).MDO_TmpStore.Int_ID;
  MDI_Temp.Str_Bauteil = Str_Bauteil;
  MDI_Temp.Str_Defekt = Str_Defekt;
  MDI_Temp.Str_Massnahme = Str_Massnahme;
  MDI_Temp.Str_Feld = Tb_Feld.Text;
  MDI_Temp.Str_Zeile = Tb_Zeile.Text;
  MDI_Temp.Int_Pos = Convert.ToInt32(Tb_Pos.Text);

  HelperClasses.SQL_Class.DBAddItem(MDI_Temp);

  // Navigate
  HelperClass.Navigate("pages/New_Item.xaml");
}

这是辅助类中的空白:

public static void Navigate(string Str_Uri)
{
  ((MainWindow)Application.Current.Windows[0]).Fm_MainContainer.Source = new Uri(Str_Uri, UriKind.Relative);
}

第一次点击 Btn_Save 页面重新加载,第二次只添加项目

【问题讨论】:

  • 我猜你想在保存后显示更新的数据。如果是这样,那么也许数据绑定就是您正在寻找的。​​span>
  • 我尝试将项目添加到列表中,我会在您离开此页面后显示...我真正的问题是,它只初始化此页面一次...
  • 是的,这是我从您的问题中了解到的,您可以参考stackoverflow.com/questions/15681352/… 了解绑定的基础知识。目前您正在以一种非常古老的方式进行操作,您需要 wpf 方法。
  • 我使用绑定的时间最多。在这里(在此页面)这是不可能的。绑定将如何帮助第二次重新加载此页面?!

标签: c# wpf xaml frame reload


【解决方案1】:

另一种选择是在帮助类中创建重载导航

public static void Navigate(object target)
{
  ((MainWindow)Application.Current.Windows[0]).Fm_MainContainer.Content = target;
}

人用这种方式

// Navigate
New_Item item = new New_Item();
HelperClass.Navigate(item);

这将确保每次都有新的初始化

【讨论】:

  • 谢谢!!有用!!!我不知道为什么我没有来过它^^我上次使用它(/。)......但我真的很感兴趣,为什么另一种方式只能工作一次......
  • 其他方式取决于框架,WPF决定何时以及如何初始化以及何时重用,因此难以控制。导航到同一个目标也不起作用,因为属性值不会改变,因此没有效果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-02-13
  • 1970-01-01
  • 2019-12-03
  • 1970-01-01
  • 2013-03-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多