イベントをアプリケーション内にそれぞれTextBox
と添付し、押されたキーがEnterキーであるかどうかを確認してアクションを実行するのではなく、 EnterキーがTextBox
で押されたときに起動するDefaultActionイベントを含むTextBox
の拡張バージョンを実装します。WPF:Enterキーが押されたときに発生するイベントを持つTextBox
DefaultAction
で
TextBox
から拡張する新しいクラスを作成してなかった
:私はそのような(XAML)のように私のアプリからこのカスタムテキストボックスを使用し
public class DefaultTextBoxControl:TextBox
{
public event EventHandler<EventArgs> DefaultAction = delegate { };
public DefaultTextBoxControl()
{
PreviewKeyUp += DefaultTextBoxControl_PreviewKeyUp;
}
void DefaultTextBoxControl_PreviewKeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
if (e.Key != Key.Enter)
{
return;
}
DefaultAction(this, EventArgs.Empty);
}
}
:
今、私はWPFを学ぶに持っていた私の小さな経験で、私はほとんどの時間の中で最も「クーラー」(そして、できれば簡単に)WAがあることに気づきました<Controls:DefaultTextBoxControl DefaultAction="DefaultTextBoxControl_DefaultAction">
</Controls:DefaultTextBoxControl>
yを実装するには
...私の質問は、上記のコントロールを改善するにはどうすればよいですか?また、私は上記のコントロールを行うことができる別の方法がありますか? ...おそらく、宣言型(xaml)と手続き型(C#)の代わりに宣言型コードのみを使用していますか?
を読んしかし、これで、あなたはどのように入力するキーが押されたときに何が起こるかを割り当てていますか?すべてのTextBoxが異なる何かをするので –
ああ!私は答えを更新します。 –
ベスト・アンサー! –