テキストボックスを複数並べたユーザーコントロールで、リターンキーでフォーカスを移動できるように下記のメソッドを作成し、各テキストボックスのKeyDownイベントから呼び出すようにしました。

でも、このユーザーコントロールをフォームにはりつけて、リターンを押していくと、ユーザーコントロール内で、フォーカスがぐるぐる回ってしまいます。

Tabキーを押していけばちゃんと移動して行くので、
SelectNextControl を this.ProcessTabKey(!e.Shift);
と、タブキーを偽装してみましたが、結果は同じでした。(T0T)

が、
Tabキーを押したときと、Tabキーを偽装したときの違いを考えていて、
ふとひらめきました。

これでうまくいけました。
this.SelectNextControl を、
this.Parent.SelectNextControl に変えただけです。

親フォームから呼べばよかったんですね (^0^)v