繁体   English   中英

当用户按下Windows Phone返回键时,如何根据设置页面中的用户输入更新滑块的最大值?

[英]How to update slider's maximum value based on user input in settings page when user presses Windows Phone back key?

我的MainPage.xaml上有一个Radial Slider Modern 我使用xaml 100设置了最大值。下面的代码

<my:RadialSliderModern x:Name="radialSliderModern"
                               Height="334"
                               HorizontalAlignment="Center"
                               VerticalAlignment="Center"
                               Width="334"
                               SliderBrush="#F26464"
                               AllowKeyboardInput="False"
                               ShowSliderValue="True"
                               CurrentValue="0"
                               MaximumValue="100"
                               DataContext="{Binding}"
                               SliderValueChanged="sliderValueChanged"
                               Foreground="#F26464"
                               FontFamily="Segoe WP Light" />

我创建了一个设置页面和一个输入字段,用户可以在其中更改最大值。 当此输入字段失去焦点时,我使用此方法存储该值

    private void maxValueUserBox_LostFocus(object sender, RoutedEventArgs e)
    {

        if (maxValueUser.Text.Length != 0)
        {

            maxVal = (int)Math.Round(Convert.ToDouble(maxValueUser.Text));
            maxValueUser.Text = maxVal.ToString();

            if (!settingsStorage.Contains("maxVal"))
            {
                settingsStorage.Add("maxVal", maxVal);
            }
            else
            {
                settingsStorage["maxVal"] = maxVal;
            }
            settingsStorage.Save();

        }

    }

我已经知道,通过在MainPage()构造函数中调用这段代码,我可以在启动时更新滑块的最大值,但是如果我想在用户按下时更新最大值,则无法弄清楚要使用哪个事件“设置”页面上的“后退”按钮,然后导航到MainPage。 有任何想法吗 ?

        if (settingsStorage.Contains("maxVal"))
        {
            radialSliderModern.MaximumValue = Convert.ToDouble(settingsStorage["maxVal"]);
        }

弄清楚了。 需要在MainPage.xaml上使用Loaded事件处理程序

Loaded="PhoneApplicationPage_Loaded"

并在文件后面的代码中

private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
    update_Slider();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM