CEdit控件中的内容越来越多时,出现了滚动条,再用SetSel选中最后区域,界面显示混乱。该如何解决

CEdit控件中的内容越来越多时,出现了滚动条,再用SetSel选中最后区域,界面显示混乱。
CString HistoryCmdStr;
在方法void MMLDlg::DoDataExchange(CDataExchange* pDX)中有以下语句。
DDX_Control(pDX, IDC_HISTORY_CMD, *pHistoryCmdEdit);
DDX_Text(pDX, IDC_HISTORY_CMD, HistoryCmdStr);
我的程序在下面的代码中,不断增加HistoryCmdStr字符串的内容,然后,UpdateData(FALSE),
相应的界面上的编辑框中就会同步了HistoryCmdStr中的内容,然后,调用SetSel(start,end),
其中的start,end为计算出来的最后一行的开始,结束位置。
当出现滚动条时,界面上显示的被选中的区域就有点乱了。具体讲,就是反显的区域不是我调用SetSel选择的区域。


------解决方案--------------------