gpt4 book ai didi

c# - Winform 中的 Int 字段不会使用 C# 更新 SQL Server 数据库中的空值

转载 作者:行者123 更新时间:2023-11-30 20:34:18 25 4
gpt4 key购买 nike

在我的 Winforms C# 应用程序中,我有 Int 数据类型的字段,它们被设置为接受 SQL Server 数据库中的空值(允许空值)。

在表单中,我有一些文本框,它们绑定(bind)到那些 int 数据类型字段。如果我在创建新记录时没有输入任何内容,它就会接受。如果我在文本框中输入一个数字,它也接受它,然后如果我删除它,它就不再接受它,甚至不允许我移动到下一个字段。

如果我通过代码将其值设置为 null 或 "",它只会忽略甚至不会更新我在其他非 int 文本字段中所做的更改。

我正在使用以下方法进行更新。

this.Validate();
this.itemsbindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.sBSDBDataSet);

如何让文本框接受空值?

我试过跟随。

IDTextBox.Text = "";
IDTextBox.Text = null;

最佳答案

我已经尝试在上述解决方案(特别是 Ivan 先生)的帮助下进行操作,结果是这样的。

要清除表单上的 int 字段:

IDTextBox.Text = String.Empty;

然后,根据 Ivan 先生的建议,我在表单的 Designer.cs 文件中搜索“IDtextbox.DataBindings.Add”并替换

this.IDTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.itemsbindingSource, "PictureID", true));

this.IDTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.itemsbindingSource, "PictureID", true, System.Windows.Forms.DataSourceUpdateMode.OnValidation, ""));

我找了一整天,最后把我的问题贴在这里,1小时就解决了。

关于c# - Winform 中的 Int 字段不会使用 C# 更新 SQL Server 数据库中的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39424231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com