C# 切换用户控件和导航栏会丢失数据

C# 切换用户控件和导航栏会丢失数据,c#,templates,mvvm,user-controls,datatemplate,C#,Templates,Mvvm,User Controls,Datatemplate,我对一个使用MVC的项目有一个问题 我有一个UserControl,其中我有一个TabControl和TabItems(他们也有UserControls) 问题是,当我填写一个字段并转到另一个选项卡item时,文本消失。我有一个模型docsiermodel,一个视图模型UCDossier,以及视图 有人能帮我吗 我使用了一个绑定: Text="{Binding SelectedOrder.Nummer, Mode=TwoWay,UpdateSourceTrigger=PropertyChange

我对一个使用MVC的项目有一个问题

我有一个
UserControl
,其中我有一个
TabControl
TabItem
s(他们也有
UserControl
s)

问题是,当我填写一个字段并转到另一个
选项卡item
时,文本消失。我有一个模型
docsiermodel
,一个视图模型
UCDossier
,以及视图

有人能帮我吗

我使用了一个绑定:

Text="{Binding SelectedOrder.Nummer, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
型号:

public class DossierModel : ViewModelBase
{
    private int IDossierNummer;
    public int Nummer
    {
        get
        {
            return IDossierNummer;
        }
        set
        {
            if (IDossierNummer == value)
                return;
            IDossierNummer = value;
            RaisePropertyChanged(() => Nummer);
        }
    }
因此,我填写了我的
档案编号
,然后转到另一个
用户控件
;当我返回时,数据不见了

视图模型:

private DossierModel _dossierM;
public DossierModel SelectedOrder
{
    get
    {
        return _dossierM ?? (_dossierM = new DossierModel());
    }
    set
    {
        if (_dossierM == value)
            return;

        _dossierM = value;
    }
}

public DossierViewModel()
{
    SelectedOrder = new DossierModel();
}
编辑


在选项卡1中是一个devexpress导航栏,在选项卡2中是一个带有用户控件的视图。当我从导航栏中选择一个项目时,它会打开选项卡2中的usercontrol。问题是,当我在usercontrols之间切换时,填充的数据不见了。

您试过调试它吗?在属性设置器上设置断点,并检查值是否正在通过
绑定进行传输。在输出窗口中也检查任何绑定错误。我已经这样做了,并且我看到当我转到另一个usercontrol时,它会变回数字结尾。我已经解决了部分问题。当您从表1转到表2时。当您打开数据时,它将被保存。但在选项卡1中是一个dockpanel,当我选择一个项目时,它会在选项卡2中打开。当我在它们之间切换时,数据就消失了。我知道它与虚拟化和缓存有关。你试过调试它吗?在属性设置器上设置断点,并检查值是否正在通过
绑定进行传输。在输出窗口中也检查任何绑定错误。我已经这样做了,并且我看到当我转到另一个usercontrol时,它会变回数字结尾。我已经解决了部分问题。当您从表1转到表2时。当您打开数据时,它将被保存。但在选项卡1中是一个dockpanel,当我选择一个项目时,它会在选项卡2中打开。当我在它们之间切换时,数据就消失了。我知道这与虚拟化和缓存有关。