Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.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# CaliburnMicro&x2B;RowDetailsTemplate:详细信息视图消失_C#_Wpf_Telerik_Caliburn.micro_Rowdetailstemplate - Fatal编程技术网

C# CaliburnMicro&x2B;RowDetailsTemplate:详细信息视图消失

C# CaliburnMicro&x2B;RowDetailsTemplate:详细信息视图消失,c#,wpf,telerik,caliburn.micro,rowdetailstemplate,C#,Wpf,Telerik,Caliburn.micro,Rowdetailstemplate,我有一个GridView,它列出了我所有的产品。第一列是“GridViewToggleRowDetailsColumn”,单击该列可展开详细信息视图 我使用CaliburnMicro加载详细信息视图,如下所示: <telerik:RadGridView ItemsSource="{Binding Products.View}" SelectedItem="{Binding SelectedProduct,Mode=TwoWay,U

我有一个GridView,它列出了我所有的产品。第一列是“GridViewToggleRowDetailsColumn”,单击该列可展开详细信息视图

我使用CaliburnMicro加载详细信息视图,如下所示:

 <telerik:RadGridView ItemsSource="{Binding Products.View}"
                             SelectedItem="{Binding SelectedProduct,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
                             AutoGenerateColumns="False"                                 
                             EnableRowVirtualization="False"
                             ShowGroupPanel="False"
                             RowDetailsVisibilityMode="Collapsed"
                             RowIndicatorVisibility="Collapsed"
                             cal:Message.Attach="[Event RowDetailsVisibilityChanged] = 
[Action OnRowDetailsVisibilityChanged($eventArgs)]">

<telerik:RadGridView.RowDetailsTemplate>
  <DataTemplate>  
    <ContentControl cal:View.Model="{Binding DataContext.ProductDetailsViewModel, RelativeSource={RelativeSource FindAncestor, AncestorType=telerik:RadGridView}}" />
  </DataTemplate>
</telerik:RadGridView.RowDetailsTemplate>
   <telerik:GridViewToggleRowDetailsColumn />

    ...Columndefinitions...

</telerik:RadGridView>
在xaml中

<ContentControl cal:View.Model="{Binding DataContext.ActiveItem, RelativeSource={RelativeSource FindAncestor, AncestorType=telerik:RadGridView}}" />

与以前一样,当前项目显示ProductDetailsView,但在我显示另一产品的详细信息后,该视图将消失。

问题在于“iViewWare”的视图缓存,它由屏幕自动实现。覆盖ProductDetailsViewModel中的“GetView”解决了这个问题


相关:

仍然不是最终解决方案,因为“旧”视图将不会被清理
<ContentControl cal:View.Model="{Binding DataContext.ActiveItem, RelativeSource={RelativeSource FindAncestor, AncestorType=telerik:RadGridView}}" />
ActivateItem(e.Row.Item as ProductDetailsViewModel);