black1stallion2
black1stallion2

Reputation: 139

Boolean Resets When App Loads Wp8

Hi I am still fairly new to C# & windows phone.

When the app Loads I wanted popup asking the user if they would like to do something

MessageBoxResult m = MessageBox.Show("Info.", "Question?", MessageBoxButton.OKCancel);
if (m == MessageBoxResult.Cancel)
{                }                       
else if (m == MessageBoxResult.OK)
{  //Do Something }

Now that works fine, if the user says no I wanted a popup that asked the user if they would like reminding next time so U used

MessageBoxResult m = MessageBox.Show("Info.", "Question?", MessageBoxButton.OKCancel);
if (m == MessageBoxResult.Cancel)
{     
    MessageBoxResult r = MessageBox.Show("", "Would You Like Reminding Next Time ?",MessageBoxButton.OKCancel);
    if (r == MessageBoxResult.Cancel)
    {   }
    else if (r == MessageBoxResult.OK)
    {   }
}                       
else if (m == MessageBoxResult.OK)
{  //Do Something  }

I need some kind of a switch, so when the app starts for the first time app checks switch which is on, they get asked a question

if they answer cancel, they get asked if they want reminding

if they answer no, set switch to off

I've tried to use a boolean but it just resets to true when the app closes, if i use a string it says a string cant be used as a bool

Any Advice ?

Upvotes: 0

Views: 68

Answers (2)

Filip
Filip

Reputation: 1864

if(!IsolatedStorageSettings.ApplicationSettings.Contains("first"))
{
   // Do your stuff
   IsolatedStorageSettings.ApplicationSettings["first"] = true;
   IsolatedStorageSettings.ApplicationSettings.Save();
}

This is all the code you need. Place everything you want to do only on first launch into this if statement. Then execute this code either in main page Loaded event or OnNavigatedTo.

Upvotes: 0

Chubosaurus Software
Chubosaurus Software

Reputation: 8161

Use IsolatedStorageSettings.ApplicationSettings to quickly save small values for example

// this will save my "your_key" to false;
IsolatedStorageSettings.ApplicationSettings.Add("your_key", false);
IsolatedStorageSettings.ApplicationSettings.Save(); // make sure you call save

// so the next time the app runs I can get it back doing this
bool your_key = (bool) IsolatedStorageSettings.ApplicationSettings["your_key"];

But, should always enclose it in a try catch because the key might not exist

bool your_key = false;  // or default value
try
{
    your_key = (bool) IsolatedStorageSettings.ApplicationSettings["your_key"];
}
catch(Exception ex)
{
}

More Information can be found here:

How to: Store and Retrieve Application Settings Using Isolated Storage

Upvotes: 1

Related Questions