百思不解:给cxcombobox显示指定的值与查询数据表赋值产生冲突

费解:给cxcombobox显示指定的值与查询数据表赋值产生冲突
本帖最后由 hzken0137 于 2015-03-27 15:41:33 编辑
遇到一个奇怪的事,代码如下

  with DM1.ds1 do
  begin
    Active:=false;
    commandtext:='select * from [ProgramID_'+ProgramID+'] where (OrderNo='''+OrderNoS2txt.EditText+''')';
    Active:=true;
   DDLXS1Txt.ItemIndex:=DDLXS1Txt.Properties.Items.indexof(FieldByName('DDLX').AsString);   //订单类型
    DDTSS1Txt.Text:=fieldbyname('DDTS').AsString;   //订单天数
  end;

当DDLXS1Txt.ItemIndex这行位于DDTSS1Txt.Text:这行前面时,会报错,显示  “ds1:field'DDTS' not found” 
但是DDLXS1Txt.ItemIndex这行位于DDTSS1Txt.Text:这行后面时,则没有问题,何解?
------解决思路----------------------
注意一下combobox的索引值是否超出范围!