В ListPicker
в моем приложении Windows Phone есть список элементов, которые пользователь может выбрать один или несколько элементов и просмотреть выбранные элементы. До этого момента все идет хорошо после этого момента. Я хочу сохранить выбранные элементы на одной странице. Теперь, что происходит, когда я закрываю приложение и запускаю его снова, нет сохраненных выбранных элементов. Итак, мой вопрос заключается в том, как сохранить изменения, внесенные пользователем? Я не хочу сохранять их в отдельном файле в изолированном хранилище. Заранее спасибо.Как сохранить изменения в ListPicker Wp8
Вот код XAML:
<Border x:Name="Border"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<UserControl x:Name="UserControl">
<StackPanel>
<TextBlock x:Name="MultipleSelectionModeSummary" Margin="8 8 0 8" TextWrapping="Wrap" Width="300" HorizontalAlignment="Left"/>
<Canvas x:Name="ItemsPresenterHost" MinHeight="46">
<ItemsPresenter x:Name="ItemsPresenter">
<ItemsPresenter.RenderTransform>
<TranslateTransform x:Name="ItemsPresenterTranslateTransform"/>
</ItemsPresenter.RenderTransform>
</ItemsPresenter>
</Canvas>
</StackPanel>
</UserControl>
</Border>
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<ScrollViewer Grid.Row="1">
<toolkit:ListPicker Header="Print in colors"
SelectionMode="Multiple"
FullModeHeader="Colors"
CacheMode="BitMapCache"
x:Name="PrintInColors"
Template="{StaticResource ListPickerControlTemplate1}">
<sys:String>Cyan</sys:String>
<sys:String>Magenta</sys:String>
<sys:String>Yellow</sys:String>
<sys:String>Black</sys:String>
<sys:String>White</sys:String>
<sys:String>Blue</sys:String>
<sys:String>Orange</sys:String>
<sys:String>Gray</sys:String>
<sys:String>Silver</sys:String>
</toolkit:ListPicker>
</ScrollViewer>
</Grid>
Вот код CS:
private string Summarize(System.Collections.IList items)
{
string str = "";
if (null != items)
{
if (items.Contains("Cyan"))
{
str += "Cyan";
}
if (items.Contains("Magenta"))
{
str += "Mangeta";
}
if (items.Contains("Yellow"))
{
str += "Yellow";
}
if (items.Contains("Black"))
{
str += "Black";
}
if (items.Contains("White"))
{
str += "White";
}
if (items.Contains("Blue"))
{
str += "Blue";
}
if (items.Contains("Orange"))
{
str += "Orange";
}
if (items.Contains("Gray"))
{
str += "Gray";
}
if (items.Contains("Silver"))
{
str += "Silver";
}
}
return str;
}
Я думаю, ваше право, я должен изменить свою стратегию. Большое спасибо, –
Добро пожаловать. FYI, если вы еще не посетили: [Что делать, если кто-то отвечает на мой вопрос?] (Http://stackoverflow.com/help/someone-answers) – har07