MFC仅让部分控件在UpdateData(FALSE)后更新绑定的变量值

一般在函数DoDataExchange中,我们会将控件与某个变量绑定,然后通过UpdateData(TRUE)可以将控件的值传入绑定的变量,UpdateData(FALSE)将绑定的变量值传出到控件。
假如我们希望在执行UpdateData(FALSE)后,某些变量的值不会被更新到控件中显示

那么在DoDataExchange函数中添加

c 复制代码
	if (pDX->m_bSaveAndValidate)  
	{
		DDX_Text(pDX, IDC_EDIT, TEST_VALUE);
	}

其中,DDX_Text的绑定方式与普通形式相同,但是增加一个if判断pDX->m_bSaveAndValidate,意思是仅当UpdateData(TRUE)执行时才会进入内部实现数据传递,而当UpdateData(FALSE)时不会进入内部实现数据传递

相关推荐
‘’林花谢了春红‘’3 小时前
C++ list (链表)容器
c++·链表·list
机器视觉知识推荐、就业指导5 小时前
C++设计模式:建造者模式(Builder) 房屋建造案例
c++
Yang.997 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3
熬夜学编程的小王7 小时前
【初阶数据结构篇】双向链表的实现(赋源码)
数据结构·c++·链表·双向链表
zz40_7 小时前
C++自己写类 和 运算符重载函数
c++
六月的翅膀7 小时前
C++:实例访问静态成员函数和类访问静态成员函数有什么区别
开发语言·c++
liujjjiyun8 小时前
小R的随机播放顺序
数据结构·c++·算法
¥ 多多¥8 小时前
c++中mystring运算符重载
开发语言·c++·算法
天若有情6739 小时前
c++框架设计展示---提高开发效率!
java·c++·算法