the property content is set more than once

John Smith picture John Smith · Dec 26, 2011 · Viewed 37.5k times · Source

I am getting the following error with my code shown below.

Error:

The property 'Content' is set more than once

Code:

<controls:PanoramaItem Header="headlines">
    <TextBlock Text="{Binding Tones}" />
    <ListBox Margin="0,0,-12,0" ItemsSource="{Binding Tones}">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal" Margin="0,0,0,17">
                    <Image Source="{Binding ImageUrl}" Height="75" Width="100"
                        Margin="12,10,9,0" VerticalAlignment="Top"/>
                    <StackPanel Width="311">
                        <TextBlock Text="{Binding Title}" TextWrapping="Wrap"
                            Style="{StaticResource PhoneTextLargeStyle}" />
                    </StackPanel>
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>                
</controls:PanoramaItem>

Answer

keyboardP picture keyboardP · Dec 27, 2011

A PanoramaItem can only have one child control but you currently have a TextBlock and a ListBox. To fix this, simply add another parent control to hold the TextBlock and ListBox (such as a StackPanel or a Grid). For example:

<controls:PanoramaItem Header="headlines">
   <grid>
        <TextBlock Text="{Binding Tones}" />
        <!--Double line list with image placeholder and text wrapping-->
        <ListBox Margin="0,0,-12,0" ItemsSource="{Binding Tones}">
            <ListBox.ItemTemplate>
                 <DataTemplate>
                     <StackPanel Orientation="Horizontal" Margin="0,0,0,17">
                         <!--Replace rectangle with image-->
                         <Image Source="{Binding ImageUrl}" Height="75" Width="100" Margin="12,10,9,0" VerticalAlignment="Top"/>
                         <!--<Rectangle Height="100" Width="100" Fill="#FFE5001b" Margin="12,0,9,0"/>-->
                         <StackPanel Width="311">
                              <TextBlock Text="{Binding Title}" TextWrapping="Wrap" Style="{StaticResource PhoneTextLargeStyle}"/>
                              <!--<TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>-->
                         </StackPanel>
                     </StackPanel>
                  </DataTemplate>
             </ListBox.ItemTemplate>
        </ListBox>               
   </grid> 
</controls:PanoramaItem>