你如何在C#winforms开发中使用数据绑定?

时间:2010-03-16 12:34:21

标签: c# winforms data-binding datagridview radio-button

最近我使用数据绑定来加速我的C#winforms应用程序的开发。但是我发现当控件是Textbox或textare和文本类型的控件时,数据绑定才有用。如果事情变成单选按钮,图像控制或datagridview,我很难使用数据绑定     例如,我很难将一组单选按钮绑定到数据库字段     我很难预先处理数据库中的数据,然后绑定到datagridview控件(我知道我可以使用view来执行此操作,但这并不方便)
    (另一个例子:数据库中的值是1和0,我需要在绑定datagridview之前转换为女性和男性)

所以我真的很想知道,你们大多数人什么时候会使用数据绑定?你将如何使用它?

修改 我知道我可以将这些东西分成不同的层,但我确实想利用数据绑定,但是当我使用它时,我发现它不那么方便,还有其他人受此影响吗?

修改 但据我所知,数据绑定就像硬编码一样,它将控件直接绑定到数据库字段,之后很难对这些用户界面进行更改

2 个答案:

答案 0 :(得分:1)

您应该查看Model-View-ViewModel开发风格。在一个非常简单的意义上,ViewModel是与Model(数据库中的数据)和View(您的UI)之间的映射。 ViewModel应该几乎纯粹是绑定到UI的数据。您的业​​务逻辑发生在这里,它应该是非常可测试的。

答案 1 :(得分:1)

最常见,最好的。数据绑定可以为UI开发节省大量时间,不应该试图“手动”绑定。但是,根据您调用的原因,将UI直接绑定到数据库并不是一个好习惯:预处理。

您应该在UI和数据层之间放置一个中间层,通常称为Enigmativity所引用的业务逻辑层。

因此,您可以在需要显示的那些外观下公开数据。看看适配器设计模式。