无法在用户设置wpf中保存TimeSpan

时间:2015-07-14 08:06:15

标签: c# wpf timespan settings

我有时间重新生成,在文件mysettings.settings中保存为timepan。我试图通过更改文本框中的文本来保存user.config中的新时间跨度。代码:

    public NewWindow()
    {
        InitializeComponent();

        tbInt.Text = Properties.MySettings.Default.SomeInt.ToString();
        tbRespawnTime.Text = Properties.MySettings.Default.TimeToRespawn.TotalSeconds.ToString();
    }


    private void tbRespawnTime_TextChanged(object sender, TextChangedEventArgs e)
    {
         Properties.MySettings.Default.TimeToRespawn = TimeSpan.FromSeconds(Convert.ToDouble(tbRespawnTime.Text));

    }

    private void btSave_Click(object sender, RoutedEventArgs e)
    {
        Properties.MySettings.Default.Save();
    }

问题是新的时间跨度在user.config中保存,但是当我试图在我的应用程序的新实例的文本框中显示它时,它再次来自mysettings.settings的默认值

我做错了什么?

前缀“tb”表示文本框 “bt”表示按钮

1 个答案:

答案 0 :(得分:1)

直接在xaml中绑定,

Text="{Binding Source={x:Static prop:Settings.Default}, Path=TimeToRespawn}"

xmlns:prop="clr-namespace:yourapplication.Properties"