2010-12-09 5 views
0

J'essaie de lier les données de linq xml dans un stockage isolé. Les modèles de données (ItemTemplate et FullModeItemTemplate) fonctionnent correctement et affichent uniquement la valeur enregistrée dans l'élément ou l'attribut dans le document XML.Liaison de données avec le problème ListPicker

  <toolkit:ListPicker.ItemTemplate> 
       <DataTemplate> 
        <TextBlock Text="{Binding BindName}" Margin="0"/> 
       </DataTemplate> 
      </toolkit:ListPicker.ItemTemplate> 
      <toolkit:ListPicker.FullModeItemTemplate> 
       <DataTemplate> 
        <StackPanel Orientation="Horizontal" Margin="16,21,0,20"> 
         <TextBlock Text="{Binding BindName}" Margin="16,0,0,0" FontSize="43" FontFamily="{StaticResource PhoneFontFamilyLight}"/> 
        </StackPanel> 
       </DataTemplate> 
      </toolkit:ListPicker.FullModeItemTemplate> 

Cependant, bien que sur le listpicker lorsqu'il est sélectionné, il semble utiliser ce nom, la valeur réelle détenue par le sélecteur liste est:

appname.pagename + namestringusedwhensetting 

Le nom de la chaîne vient d'où je l'ai mis Je suppose. J'utilise cette méthode:

public class BindingSetter 
    { 
     string sValue; 

     public string SValueN 
     { 
      get { return sValue; } 
      set { sValue = value; } 
     } 
    } 

Il revient:

appname.pagename + sValue 

Je l'ai utilisé tout au long de ma demande de liaison et n'ont pas eu ce problème avant donc je suis un peu perplexe.

Merci d'avance.

+0

Salut Jamie, vous n'obtenez pas beaucoup de réponse; ça sonne un peu bizarre en ce moment, et c'est peut-être parce que c'est bizarre, ce qui est une raison de plus pour expliquer tout cela très clairement, comme si c'était un enfant. Quoique un enfant qui connaît XAML et C#. –

+0

Merci pour l'indice, je l'ai mis à jour pour essayer d'expliquer plus clairement – Jamie

+0

Je ne suis pas tout à fait sûr de ce qui ne va pas? Dans votre code XAML, vous avez DataTemplates et les deux ont TextBlocks qui se lient à la propriété BindName. Maintenant, quoi de neuf avec appname.pagename + namestringusedwhensetting? Je suis complètement perdu après votre message XAML et ne peux pas obtenir votre problème. – decyclone

Répondre

0

J'ai réussi à résoudre ce problème. Pour utiliser la valeur sur l'élément sélectionné, j'ai utilisé:

((appname.PageName.ClassUsedToBindData)(ListPickerName.SelectedItem)).String 

par ex.

((calculator.MainPage.CalculateBinding)(FunctionSelector.SelectedItem)).Function 

Hope this helps quelqu'un qui se bat comme moi!

Questions connexes