选项卡控件 所选选项卡项的保存已更改

本文关键字:选项 保存 控件 | 更新日期: 2023-09-27 18:27:24

每次

用户切换到另一个选项卡项时,我都需要以不同的TabItem保存数据。

我尝试操作TabControl.SelectionChanged事件,但没有关于以前选择的选项卡项的信息。

那么,当用户从我的 TabItem 切换到另一个选项卡项时,如何获得时刻?

选项卡控件 所选选项卡项的保存已更改

使用各个选项卡的"输入"和"离开"事件。如果需要在代码启动时触发 enter 事件,则可能需要以编程方式将所选选项卡更改为与设计时不同的选项卡。

您可以创建一个全局变量来存储最后一个选项卡的内容

private TabPage LastTab = null;
private void tabSelectionChanged(...)
{
  if(LastTab != null)
     //Do save
  LastTab = tab.SelectedTabPage;// or equivalent 
}

使用以下代码:

private object LastTab = null;
private void tabSelectionChanged(...)
{
  if(LastTab != null)
  {
     //Do save
  }
  LastTab = control.SelectedContent;
}

这里的内容将是对象类型,您可以键入转换为特定类并执行保存操作

您需要

的内容存在于参数SelectionChangedEventArgs e中:

  • e.AddedItems
  • e.RemovedItems