晚上好,
我刚开始大学二年级,我第一次学习C#。我以前有过Java和Javascript的编码经验,但从来没有c#。
我遇到基本信用/借记计划的问题。请参阅以下代码:
private double balance = 0;
private string creditamount;
private string debitamount;
private double currentamount = 0;
private void CreditButton_Click(object sender, RoutedEventArgs e)
{
AmountField.Text = creditamount;
Convert.ToDouble(creditamount);
CurrentBalance.Text = "Your current balance is £" + (creditamount + balance);
}
private void DebitButton_Click(object sender, RoutedEventArgs e)
{
AmountField.Text = debitamount;
double.Parse(debitamount);
CurrentBalance.Text = "Your current balance is £" + (debitamount - balance);
}
用户应在AmountField中输入金额,然后按Credit或Debit按钮。单击任一按钮后,金额应从字符串转换为double,然后显示在CurrrentBalance .Text中
它表示我的琴弦没有被转换为双打。
我尝试过使用Convert.ToDouble();和double.Parse();但Visual Studio一直给我错误。
有人有任何建议吗?
答案 0 :(得分:0)
=
作业从右到左。此外,所有Convert.ToStuff
返回结果,因此您应该期待它(将其分配给某个变量)。
因此,您的事件处理程序(以及您将来的所有例行程序)应该与此类似:
private void DebitButton_Click(object sender, RoutedEventArgs e)
{
debitamount= AmountField.Text ; // Take the Right and assign it to the Left
currentamount = Convert.ToDouble(debitamount); // convert + assign
CurrentBalance.Text = "Your current balance is £" + (debitamount - balance); // Again take the Right and assign it to the Left
}
答案 1 :(得分:0)
首先,如果您使用的是wpf,请尽量避免使用此代码。其次尝试利用MVVM。什么是MVVM。浏览此链接。
http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial
所以简而言之,我建议创建一个Viewmodel类并使其实现INotifyPropertyChanged。创建您的信用卡和借记金额属性将其绑定在UI中,并且不要忘记在这些属性上使用OnPropertyChanged。因此,当用户在UI中输入任何文本时,即当UI状态发生变化时,您的变量设置块将被调用,您可以继续进行。同样在mvvm中,您使用的命令不是按钮点击。还要将xaml的数据上下文设置为此视图模型。