private void Button_Click(object sender, RoutedEventArgs e)
{
MainTextBox.Text += (sender as Button).Content.ToString();
}
var text = button.Content as string;
textbox.SelectedText = text;
textbox.SelectionLength = 0; // removing selection from inserted text
textbox.SelectionStart += text.Length;
これは、カーソル位置にボタンコンテンツを挿入(及び選択されたテキストを置き換える)であろう - ユーザと同じキーボードからの入力。 PS。 textbox
が不明である場合、それは代わりに、あなたがwindow
を置いてもよいFocusManager.GetFocusScope(this)
の
var textbox = FocusManager.GetFocusedElement(FocusManager.GetFocusScope(this)) as TextBox;
で見つけることができます。
テキストボックスだけでなく、WinAPI関数が役立つはずです。 http://www.pinvoke.net/default.aspx/user32.sendinput
テキストボックスからフォーカスを失うことなく別のボタンをクリックすることはできません。なぜあなたはこれをしたいのですか? – decyclone
OK、フォーカスは主な問題ではありません:) - 私は仮想キーボードのようなボタンを使用したいです – Yanshof
これは5ボタン(1,2,3,4,5)を含む仮想キーボードの一種です そしてそれぞれそれらをTextBoxにcharとして追加する必要があります。 '仮想キーボード'は、2つのテキストボックスを持つ同じウィンドウに存在するuserControlです。私はそれらの2つのテキストボックスの魔女が焦点にあることを知っている - だから私は誰に私はイベントを送信する必要があります知っている。 しかし、私はまだイベントを送信する方法を知らない... – Yanshof