Winform程序中对TextBox数据绑定的空值校验问题

quou2002 2008-04-13 12:50:26
Winform窗体程序中,我有若干个TextBox双向绑定到数据库某个表中的几个int字段,这几个字段都允许空。

当我通过程序修改某一条记录时,假设之前TextBox中有值,此时我想删除其值进行保存(即希望数据库此记录字段为空),控件失去焦点时触发默认绑定校验失败,光标不可移出TextBox。

请教大家,在这种情况下,我应该如何将此字段置空?
...全文
541 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yzy85 2009-09-17
  • 打赏
  • 举报
回复

Binding bind = new Binding("Text", bindsourse, name, true, DataSourceUpdateMode.OnValidation, DBNull.Value);
tb.DataBindings.Add(bind);
bind.DataSourceNullValue = DBNull.Value;
if (((System.Data.DataView)bindsourse.DataSource).Table.Columns[name].DataType.FullName == "System.Decimal")
{
//下面两句用于处理数值型字段绑定无法设置空值问题
bind.Format += new ConvertEventHandler(bind_Format);
bind.Parse += new ConvertEventHandler(bind_Parse);
}


void bind_Format(object sender, ConvertEventArgs e)//绑定控件时发生
{
if (e.Value == DBNull.Value)
e.Value = "";
}


void bind_Parse(object sender, ConvertEventArgs e)//控件值更改时发生
{
if (e.Value.ToString() == "")
e.Value = DBNull.Value;
}


yzy85 2009-09-17
  • 打赏
  • 举报
回复
Binding bind = new Binding("Text", bindsourse, name, true, DataSourceUpdateMode.OnValidation, DBNull.Value);
tb.DataBindings.Add(bind);
bind.DataSourceNullValue = DBNull.Value;
if (((System.Data.DataView)bindsourse.DataSource).Table.Columns[name].DataType.FullName == "System.Decimal")
{
//下面两句用于处理数值型字段绑定无法设置空值问题
bind.Format += new ConvertEventHandler(bind_Format);
bind.Parse += new ConvertEventHandler(bind_Parse);
}
dancingbit 2008-04-13
  • 打赏
  • 举报
回复
为对应的Binding对象增加Format事件和Parse事件处理方法。
内容概要:本文系统研究了基于W-GAN(Wasserstein生成对抗网络)的光伏出力场景生成方法,并提供了完整的Python代码实现。该方法充分利用W-GAN在捕捉复杂数据分布方面的优势,能够生成具有高度真实性与时序一致性的光伏发电功率场景,有效解决了传统场景生成方法在处理非线性、非平稳光伏数据时存在的模式坍塌与分布偏差问题。研究内容涵盖网络架构设计、梯度惩罚机制引入以保障训练稳定性、损失函数优化及生成样本质量评估等关键环节,生成的场景可用于电力系统规划、运行调度、储能配置及风险评估等任务,尤其适用于高比例可再生能源接入背景下的不确定性建模需求。; 适合人群:具备一定Python编程能力、深度学习基础理论知识的研究生、科研人员,以及从事新能源发电预测、电力系统优化调度等相关领域的工程技术人员。; 使用场景及目标:①实现光伏出力不确定性建模,生成满足统计特性的典型与极端功率场景;②支撑含光伏的微电网、主动配电网的优化调度、可靠性分析与韧性评估;③作为深度学习在能源时序数据生成领域的一个典型案例,服务于教学演示与学术研究。; 阅读建议:建议结合所提供的Python代码进行动手实践,重点理解W-GAN判别器(Critic)结构、梯度惩罚项(Gradient Penalty)的实现原理,并通过可视化手段对比原始数据与生成数据的分布特征,进一步可尝试将其与传统GAN、VAE或DDPM等生成模型在场景多样性、保真度方面进行横向比较。
代码转载自:https://pan.quark.cn/s/a4b39357ea24 **C#反编译工具dnSpy的详细说明** dnSpy是一款专门用于C#编程语言的强效反编译器,其具备广泛的功能,涵盖了反编译、调试以及代码编辑等多个方面。这款工具凭借其便捷的操作性和丰富的特性,广泛受到开发者和逆向工程从业者的青睐。本文将详细研究dnSpy的关键功能、运作机制以及其在软件开发的实际应用。 dnSpy的关键功能之一是反编译。它能够将已编译的.NET程序集(例如DLL或EXE文件)还原为源代码形态,从而让开发者得以审视并掌握应用程序的内部构造。借助IL(间语言)反编译技术,dnSpy能够生成与原始C#代码高度相似的代码,以便用户进行阅读和分析。不仅如此,dnSpy还兼容其他.NET语言,例如VB.NET和F#。 dnSpy的调试功能是其另一显著优势。它内含了一个功能强大的调试器,使用户可以在反编译后的代码设置断点,检查并调整变量值,以及追踪代码的执行路径等。这对于故障排除、学习他人代码或进行安全研究都极具帮助。同时,dnSpy支持模块和程序集的热替换,即在调试期间可以即时更新代码,而无需重启应用程序。 另外,dnSpy提供了代码编辑功能,用户可以直接在反编译的代码上进行修改,并将这些更改保存回原始程序集。这种功能对于修正错误、优化代码或进行软件逆向工程研究都极为便利。 除了上述核心功能,dnSpy还拥有卓越的扩展性。它支持插件架构,允许开发者自定义并增加新的功能,如语法高亮显示、代码格式化工具等。这使得dnSpy能够根据用户的个性化需求进行定制,进一步提升了其灵活性和实用性。 在提供的压缩文件,我们可以发现若干配置文件(例如dnSpy.exe.confi...

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧