OrangeUI

通常我们需要直接在列表框上面对列表项的数据进行编辑,
下面以编辑列表项的Detail属性来举例,
步骤如下:
双击ListBox,在项目编辑器中添加三个列表项,
列表项的标题用于表示商品名称,
列表项的Detail属性用于表示需要购买的数量,
如下图所示:

在ItemDesignerPanel上面放置一个Edit控件,

将Edit与列表项的Detail进行绑定,

现在Edit显示每个列表项的Detail属性了:

将列表项中Edit的文本居中显示,
在Edit.SelfOwnMaterial.DrawTextParam中进行设置:

最后,在Edit的OnClick事件中,调用ListBox.StartEditingItem来启动编辑,
代码示例如下:

procedure TFrameListBox_UseItemEdit.edtCountClick(Sender: TObject);
begin
//启动编辑
Self.lbEditTest.Properties.StartEditingItem(
Self.lbEditTest.Properties.MouseOverItem,
edtCount,
nil,
edtCount.SkinControlType.FMouseDownPt.X,
edtCount.SkinControlType.FMouseDownPt.Y
);
end;
 
最后,可以调用ListBox.StopEditingItem来结束编辑