我正在尝试将linq xml中的数据绑定到隔离存储中。数据模板(ItemTemplate和FullModeItemTemplate)工作正常,只显示xml文档中元素或属性中保存的值。
<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>
但是,虽然在listpicker上选中它时似乎使用此名称,但列表选择器保存的实际值是:
appname.pagename + namestringusedwhensetting
字符串的名称来自我设定的位置。我正在使用这种方法:
public class BindingSetter
{
string sValue;
public string SValueN
{
get { return sValue; }
set { sValue = value; }
}
}
所以它正在回归:
appname.pagename + sValue
我在我的应用程序中使用了绑定,之前没有遇到过这个问题,所以我有点难过。
提前致谢。
答案 0 :(得分:0)
我设法解决了这个问题。要使用我使用的所选项目的值:
((appname.PageName.ClassUsedToBindData)(ListPickerName.SelectedItem)).String
例如
((calculator.MainPage.CalculateBinding)(FunctionSelector.SelectedItem)).Function
希望这有助于任何像我一样挣扎的人!