如何从 cxgrid Lookupcombobox 获取编辑值
Delphi-7,DevExpress ExpressQuantumGrid Suite For Delphi.BCB v5.8 Fianl
我在 cxGrid 中有一个名为 emaillist_id 的 Lookupcombobox 列。其中 emaillist_id 是 KeyField,Email 是 ListField。用户可以从列表中选择电子邮件或键入新电子邮件。当用户输入新的电子邮件时,我想使用 SP 将其添加到数据库表中。为此我需要获得编辑值。我怎样才能做到这一点?
或者也许,这个问题有更好的解决方案。
procedure TfrmClientEmail.grdClientEMailDBTableViewEditValueChanged(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
begin
if AItem.Index=(Sender as TcxGridDBTableView).GetColumnByFieldName('emaillist_id').Index then
with ADOSP_ClientEmailEdit do
begin
Parameters.ParamValues['@KodClient']:=ADOSP_ClientEmail['KodClient'];
Parameters.ParamValues['@email']:=Sender.Controller.EditingController.Edit.EditValue;//This return KeyFieldValue
ExecProc();
end;
ADOSP_ClientEmailRefresh();
end;
谢谢。
Delphi-7, DevExpress ExpressQuantumGrid Suite For Delphi.BCB v5.8 Fianl
I have a lookupcombobox column in cxGrid named emaillist_id. Where emaillist_id is KeyField and Email is ListField. A user can either choose an email from the list or type a new one. When user type new Email I want to add it to a database table using SP. For that I need to get edited value. How can I do that?
Or maybe, there is a better solution for this problem.
procedure TfrmClientEmail.grdClientEMailDBTableViewEditValueChanged(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
begin
if AItem.Index=(Sender as TcxGridDBTableView).GetColumnByFieldName('emaillist_id').Index then
with ADOSP_ClientEmailEdit do
begin
Parameters.ParamValues['@KodClient']:=ADOSP_ClientEmail['KodClient'];
Parameters.ParamValues['@email']:=Sender.Controller.EditingController.Edit.EditValue;//This return KeyFieldValue
ExecProc();
end;
ADOSP_ClientEmailRefresh();
end;
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用事件
Properties.OnNewLookupDisplayText
。在这里您可以获取 EditValue (DisplayText) 作为参数。Use the event
Properties.OnNewLookupDisplayText
. Here you get the EditValue (DisplayText) as parameter.