R – Does each row in a silverlight dataGrid have to have the same “RowDetailsTemplate”

silverlight

I'm defining a datagrid's RowDetailsTemplate in the following way:

RowDetailsTemplate="{StaticResource defaultTemplate}"

where

<UserControl.Resources>
    <DataTemplate x:Key="defaultTemplate">
        <StackPanel>
            <TextBlock Text="default" x:Name="_txt" />
        </StackPanel>
    </DataTemplate>
    <DataTemplate x:Key="otherTemplate">
        <StackPanel>
            <TextBlock Text="other" x:Name="_txt" />
        </StackPanel>
    </DataTemplate>
</UserControl.Resources>

Is there a way to programatically define which of the two above DataTemplates a given row is to use (perhaps in the LoadingRowDetails() event)?

Best Solution

You can add the following code in your LoadingRowDetails event, obviously replacing my useless If condition with your own:

    If 1 = 1 Then
        e.Row.DetailsTemplate = CType(Resources("defaultTemplate"), DataTemplate)
    Else
        e.Row.DetailsTemplate = CType(Resources("otherTemplate"), DataTemplate)
    End If
Related Question