Инициализируйте переключатель, как отмечено в настройках, сохраненных в PhoneApplicationService - PullRequest
1 голос
/ 16 октября 2011

Я занимаюсь разработкой приложения для Windows Phone. У меня есть страница настроек, которая постоянно загружается со значением по умолчанию. Я использовал PhoneApplicationService для сохранения свойства Name переключателей, которые были проверены, чтобы сохранить значение, которое будет использоваться в следующий раз.

В классе конструктора на странице настроек, как я должен кодировать, чтобы инициировать с именем переключателей, которые сохранены в PhoneApplicationService

<RadioButton Content="Black" Name="ic_black" GroupName="gColor" Click="icChange" />
<RadioButton Content="Blue" GroupName="gColor" Name="ic_blue" Click="icChange" />
<RadioButton Content="Brown" GroupName="gColor" Name="ic_brown" Click="icChange" />
<RadioButton Content="Gray" GroupName="gColor" Name="ic_gray"  Click="icChange" />

Код выше - это страница предпочтений для xaml. Метод icChange получает имя переключателя и сохраняет его в PhoneApplicationService.State["color"]

{
            InitializeComponent();
            object prefs;
            string temp;
            if (prefs.State.TryGetValue("color", out prefs))
            {
                temp =  prefs.ToString();
                //the name of the radio button to be checked is the variable temp..
                //code to initialize the correct radio button from prefs
            }
}

1 Ответ

0 голосов
/ 06 февраля 2012

Я бы предложил что-то вроде следующего, даже если оно не самое лучшее:

temp =  prefs.ToString();  
if(ic_black.Name == temp) ic_black.IsChecked = true;
else if(ic_blue.Name == temp) ic_blue.IsChecked = true;
else if(ic_brown.Name == temp) ic_brown.IsChecked = true;
else if(ic_gray.Name == temp) ic_gray.IsChecked = true;
else //Do the default case
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...