如何传入dataConrid选择以在ContentControl.ContentTemplateSelector中使用?

时间:2016-09-13 18:24:16

标签: wpf xaml datagrid

我在Window.Resources

中获得了数据模板
    <TemplateSelectors:Schedule x:Key="templateSelector">
        <TemplateSelectors:Schedule.DailyTemplate>
            <DataTemplate> (stuff here)  </DataTemplate>
        </TemplateSelectors:Schedule.DailyTemplate>

我在数据网格中使用它们

<DataGrid RowDetailsTemplateSelector="{StaticResource templateSelector}"...

一切都很好,但现在我想在窗口上显示其他人的数据模板。所以我试试这个:

<ContentControl ContentTemplateSelector="{StaticResource templateSelector}" />

但我得到了这个

  

对象引用未设置为对象的实例。

方法

public override DataTemplate SelectTemplate(object jobOb, DependencyObject container)
{

期待对象jobOb但它是null(如预期的那样)。如何传递数据网格选择?

1 个答案:

答案 0 :(得分:0)

比我想象的更简单。只需要将内容设置为数据网格上的选定项目。

<ContentControl Content="{Binding ElementName=datagrid, Path=SelectedItem}" ContentTemplateSelector="{StaticResource templateSelector}" />