C#的学习不知不觉就接近尾声了,这最后的大作业也让我学到了不少。
以下是大作业中关于Windows Phone 8.1 App的一些代码,运行图片,和我自己的感悟。
首先,通过Windows Phone 8.1我学会了如何实现页面的跳转。使用 Frame.Navigate(typeof()); 即可实现页面的跳转了。而不同页面间的数据传递,则可以使用下面这条代码: Frame.Navigate(typeof(), e); (e为你想要传递的数值)。涉及到多个数值的传递时,我们就可以将这些数值存入一个数组,再通过数组进行传递了。
接着谈一下我的APP吧。其实它的难度挺低的,只是对于分期付款所需花费的总金额进行了一个计算。当然也有一点新颖的地方,那就是引入了通货膨胀率这一概念。通货膨胀率=(现物价—基准物价)/基准物价。现物价就是现在的物价,基准物价就是你用来比较的物价了。那么通过月通胀率我们就可以大致算出我们现在的100元相当于一个月前的多少,即100/(1+月通胀率)。我觉得引入了这个概念,我们可以更为清晰的了解我们的购物花费,也可以更好地做出选择。下面就是一些代码和运行结果的截图了。
//多个数据的传递 double check = 1; double W = Convert.ToDouble(w); double month = Convert.ToDouble(textBox1.Text); double rate = Convert.ToDouble(textBox2.Text); double[] a = new double[5]; a[0] = check; a[1] = W; a[2] = month; a[3] = rate; Frame.Navigate(typeof(Page4), a);
//通过Button的点击,进行计算和输出 private void Button_Click_1(object sender, RoutedEventArgs e) { double wc = 0; double w = 0; double x = Convert.ToDouble(textBox.Text); double z = 0; if (a[0] == 1) { double W = a[1]; double month = a[2]; double rate = a[3] / 100; double n = W / month; for (int i = 0; i < month; i++) { z = Math.Pow(1+x/100, i); w = w + ((W - i * n) * rate + n); wc = wc + ((W - i * n) * rate + n) / z; } } if (a[0] == 2) { double W = a[1]; double s = a[2]; double month = a[3]; w = month * s; for (int i = 0; i < month; i++) { z = Math.Pow(1+x/100, i); wc = wc + s / z; } } textBlock1.Text = Convert.ToString(Math.Round(w, 2)); textBlock2.Text = Convert.ToString(Math.Round(wc, 2)) + "元"; if (wc < a[1]) { textBlock3.Text = "省了" + Convert.ToString(Math.Round(a[1] - wc, 2)) + "元"; } if (wc > a[1]) { textBlock3.Text = "多花了" + Convert.ToString(Math.Round(wc - a[1], 2)) + "元"; } if (wc == a[1]) { textBlock3.Text = "奇迹啊!二者花费正好相等"; } }