1

对于我正在构建的 winForm,我正在使用TableLayoutPanel,它具有任意数量的文本框和两个用于添加或删除框的按钮,+ 和 -。+ 和 - 按钮直接出现在用户关注的文本框下方,如下所示:

  • (文本框)
  • (带焦点的文本框)
  • (减号按钮)
  • (加号按钮)
  • (文本框)
  • (文本框)
  • (文本框)

如果用户单击另一个框,+ 和 - 按钮应在运行时适当移动。我一直在尝试使用.GetControlFromPositionand.GetPositionFromControl命令移动文本框,但这似乎不起作用,因为这些框要么不移动,要么移动到与预期不同的位置。解决这个问题的最佳方法是什么?

4

1 回答 1

0

您必须在新旧位置之间更改两个按钮和每个文本框的位置。如果将两个或多个控件分配给同一个单元格,则除一个之外的所有控件都将移动到下一个空单元格。


只是一个可能看起来更好并使编码更容易的建议,将按钮放在文本框右侧的两个窄列中怎么样。下面( )代表空单元格。

(    text box    ) ( ) ( )
(focused text box) (+) (-)
(    text box    ) ( ) ( )
(    text box    ) ( ) ( )
(    text box    ) ( ) ( )
于 2012-03-25T22:33:11.027 回答