Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我应该将WinForm文本框绑定到局部变量、某些数据实体,还是编写帮助函数来获取值_C#_Winforms_Data Binding - Fatal编程技术网

C# 我应该将WinForm文本框绑定到局部变量、某些数据实体,还是编写帮助函数来获取值

C# 我应该将WinForm文本框绑定到局部变量、某些数据实体,还是编写帮助函数来获取值,c#,winforms,data-binding,C#,Winforms,Data Binding,我正在编写一个c#winforms应用程序,它可以对一个web服务进行几个rest调用 我有几个不同行为的文本框。举一个具体的例子,我们称之为txtPrice。我有两个按钮,可以在(不均匀的)允许值范围内提高或降低价格(btnIncrease和btndCrease) 我需要解析txtPrice中的值以将其发送到Web服务。我已经想到了三种方法来做这件事,我想得到一些建议(或者一个指针来看看另一种方法) 具有表单范围变量(private double price;),这些变量在txtPrice\u

我正在编写一个c#winforms应用程序,它可以对一个web服务进行几个rest调用

我有几个不同行为的文本框。举一个具体的例子,我们称之为
txtPrice
。我有两个按钮,可以在(不均匀的)允许值范围内提高或降低价格(
btnIncrease
btndCrease

我需要解析
txtPrice
中的值以将其发送到Web服务。我已经想到了三种方法来做这件事,我想得到一些建议(或者一个指针来看看另一种方法)

  • 具有表单范围变量(
    private double price;
    ),这些变量在
    txtPrice\u验证时更新。我喜欢这种方法,因为它将视图与模型分开,但我不喜欢它,因为数据是重复的。此外,每次我使用按钮更新价格时,我必须在两个地方进行更新
  • 使用成员函数
    myForm.getPrice()
    myForm.setPrice()
    更新
    txtPrice
    。这方面的一些东西看起来很难看,将数据存储为字符串,但似乎很实用
  • 也许有一种(非数据库)实体可以绑定,它可以封装这个逻辑

  • 更一般地说,是否有一本简单的教程,教你一些这样的基本练习?

    听起来好像你复制了表单级属性的功能,却没有能够轻松绑定到它。为什么不将“Price”设为属性,实现
    System.ComponentModel.INotifyPropertyChanged
    ,并将文本框绑定到属性。另外,我建议您使用十进制而不是双精度。非常感谢,这就是我要找的。