0

WPF アプリケーションのテキスト ボックス コントロールに問題があります。問題は、ユーザーが複数行のテキストを選択してからタブをクリックすると、選択した行が右にインデントされずに削除されることです。この問題を解決する方法はありますか?

どんな助けにも感謝します。ありがとうアフマド

4

2 に答える 2

1

残念ながら、TextBoxではタブキーが作成されていないため、その機能を実装する必要があると言わざるを得ません。

于 2012-06-13T20:38:34.517 に答える
1

これはテキスト ボックスの既定のアクションではないため、コード ビハインドで処理する必要があります。あなたがそれを扱うことができる多くの方法。PreviewKeyDown をオーバーライドする必要があり、テキストがオーバーライドされないようにするために e.handled を true に設定できます。

    private void TextBox_PreviewKeyDown(object sender, System.Windows.Input.KeyEventArgs e)
    {
        TextBox tbx = sender as TextBox;
        if (e.Key == Key.Tab)
        {
            tbx.Text = tbx.Text.Insert(tbx.SelectionStart, "\t" + tbx.Text.Substring(tbx.SelectionStart));
            e.Handled = true;
        }
    }
于 2012-06-14T03:32:04.243 に答える