1

私が構築しているwinFormの場合、任意の数のテキストボックスとボックスを追加または削除するための2つのボタン+および-を持つTableLayoutPanelを使用しています。+ボタンと-ボタンは、ユーザーが次のようにフォーカスしたテキストボックスのすぐ下に表示されます。

  • (テキストボックス)
  • (フォーカスのあるテキストボックス)
  • (マイナスボタン)
  • (プラスボタン)
  • (テキストボックス)
  • (テキストボックス)
  • (テキストボックス)

ユーザーが別のボックスをクリックすると、実行時に+ボタンと-ボタンが適切に移動するはずです。.GetControlFromPositionしばらくの間、 andコマンドを使用してテキストボックスを移動しようとしましたが.GetPositionFromControl、ボックスが移動しないか、意図した場所とは異なる場所に移動するため、これは機能しないようです。この問題を解決するための最善の方法は何ですか?

4

1 に答える 1

0

2つのボタンとすべてのテキストボックスの位置を、新しい位置と古い位置の間で変更する必要があります。2つ以上のコントロールが同じセルに割り当てられている場合、1つを除くすべてが次の空のセルに移動されます。


見栄えが良く、コーディングが簡単になる可能性のある提案です。テキストボックスの右側にある2つの狭い列にボタンを配置するのはどうでしょうか。( )以下は空のセルを表しています。

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