我的对话框上有一个简单的可编辑组合框。
下拉列表中有几个预定义的文本值。其中一项是:
"Test 123"
组合框映射到
CString
变量 m_strNotes
。
如果我这样做:
m_strNotes = _T("Test");
UpdateData(FALSE);
我发现组合框最终选择了“Test 123”!
相反,我必须使用
m_cbTextValues.SetWindowText(_T("Test"));
并使用 m_strNotes
变量进行绕过。
为什么我必须这样做?由于
CComboBox
可以编辑,因此文本不必位于下拉列表中。那么,当我使用前一种方法时,为什么它不只设置编辑文本而不尝试在下拉列表数据中找到合适的匹配项?