Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何重新选择项目?_C#_Wpf_Xaml_Mvvm - Fatal编程技术网

C# 如何重新选择项目?

C# 如何重新选择项目?,c#,wpf,xaml,mvvm,C#,Wpf,Xaml,Mvvm,这是谷歌翻译 保留所选项目的值 重新选择已选择的项目 我怎样才能把同样的东西带回来 我尝试Selecteditem=null 但另一个窗格用于选择EdItem值 XAML <ListBox ItemsSource="{Binding BizPlaceItems}" SelectedItem="{Binding SelectedBizPlaceItem}" /> C# public ViewClassName SelectedBizPlaceItem { g

这是谷歌翻译

  • 保留所选项目的值
  • 重新选择已选择的项目
  • 我怎样才能把同样的东西带回来
  • 我尝试
    Selecteditem=null

    但另一个窗格用于选择EdItem值

    XAML

    <ListBox ItemsSource="{Binding BizPlaceItems}" 
             SelectedItem="{Binding SelectedBizPlaceItem}" 
    />
    
    
    
    C#

    public ViewClassName SelectedBizPlaceItem
    {
    get=>GetPropertyValue();
    设置
    {
    SetPropertyValue(值);
    如果(值==null)
    AppResolver.Info.SelectedBizPlace=null;
    其他的
    AppResolver.Commands.SelectedBizPlaceCommand.Execute(值);
    }
    }
    
    在设置新值之前,您需要将
    SelectedBizPlaceItem
    值存储到私有属性,例如
    OldSelectedItem
    。然后通过将
    OldSelectedItem
    指定给
    SelectedBizPlaceItem
    属性来恢复以前的值。解决了问题thx!!
    public ViewClassName SelectedBizPlaceItem
    {
         get => GetPropertyValue<ViewClassName>();
         set
         {
             SetPropertyValue(value);
             if (value == null)
                AppResolver.Info.SelectedBizPlace = null;
             else
                AppResolver.Commands.SelectedBizPlaceCommand.Execute(value);
         }
    }