Vinculando XML no Silverlight sem classes nominais

Digamos que eu tenho um simples pedaço de XML: -

<root>
   <item forename="Fred" surname="Flintstone" />
   <item forename="Barney" surname="Rubble" />
</root>

Depois de buscar esse XML no Silverlight, gostaria de vinculá-loXAML deste ilke: -

<ListBox x:Name="ItemList" Style="{StaticResource Items}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal">           
                <TextBox Text="{Binding Forename}" />
                <TextBox Text="{Binding Surname}" />  
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox> 

Agora eu posso ligar simplesmente o suficiente com LINQ to XML e uma classe nominal: -

public class Person {
     public string Forename {get; set;} 
     public string Surname {get; set;}
}

Isso pode ser feito sem essa aula?

Em outras palavras, o acoplamento entre o código do Silverlight e o XML de entrada é limitado apenas ao XAML, outro código-fonte é independente do conjunto de atributos no elemento do item.

Editar: O uso do XSD é sugerido, mas, no final, é a mesma coisa. XSD-> classe gerada.

Editar: Uma classe anônima não funciona, o Silverlight não pode vinculá-los.

Editar: Isso precisa ser bidirecional, o usuário precisa editar os valores e esses valores acabam no XML. (Alterou o TextBlock original para TextBox na amostra acima.)

questionAnswers(4)

yourAnswerToTheQuestion