If you keep getting this error in your windows phone app, it should be from your XAML. If you have a DataTemplate(<DataTemplate>) and if it has more than one child, it throws this exception.
For example:
<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<Image Source="{Binding Path=Image}" />
<TextBlock Text="{Binding Path=Name}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Here there are two direct child controls in the DataTemplate - an Image controld and a TextBlock control. The error can be corrected by placing the two controls inside a container control like a StackPanel. So the above code can be converted as below:
<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<Image Source="{Binding Path=Image}" />
<TextBlock Text="{Binding Path=Name}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Now it complies with the rules that a DataTemplate can contain only one direct child control.
No comments:
Post a Comment