teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

見直しキャンペーン中

2023/07/21 14:05

投稿

TN8001
TN8001

スコア10111

answer CHANGED
@@ -1,32 +1,32 @@
1
- 意味的にはこれで十分でしょうか。
1
+ 意味的にはこれで十分でしょうか。
2
- ```C#
2
+ ```cs
3
- var element = Keyboard.FocusedElement as UIElement;
3
+ var element = Keyboard.FocusedElement as UIElement;
4
- element?.MoveFocus(new TraversalRequest(direction));
4
+ element?.MoveFocus(new TraversalRequest(direction));
5
- ```
5
+ ```
6
- とか
6
+ とか
7
- ```C#
7
+ ```cs
8
- var element = e.OriginalSource as UIElement;
8
+ var element = e.OriginalSource as UIElement;
9
- element?.MoveFocus(new TraversalRequest(direction));
9
+ element?.MoveFocus(new TraversalRequest(direction));
10
- ```
10
+ ```
11
-
11
+
12
- ---
12
+ ---
13
-
14
-
13
+
14
+
15
- ```C#
15
+ ```cs
16
- var element = FocusManager.GetFocusedElement(this) as UIElement;
16
+ var element = FocusManager.GetFocusedElement(this) as UIElement;
17
- element?.MoveFocus(new TraversalRequest(direction));
17
+ element?.MoveFocus(new TraversalRequest(direction));
18
- ```
18
+ ```
19
- としたい場合は`FocusScope`の設定がいるようです(よくわかってません
19
+ としたい場合は`FocusScope`の設定がいるようです(よくわかってません
20
- ```xaml
20
+ ```xml
21
- <UserControl FocusManager.IsFocusScope="True" />
21
+ <UserControl FocusManager.IsFocusScope="True" />
22
- ```
22
+ ```
23
- or
23
+ or
24
- ```C#
24
+ ```cs
25
- public TestControl()
25
+ public TestControl()
26
- {
26
+ {
27
- InitializeComponent();
27
+ InitializeComponent();
28
- FocusManager.SetIsFocusScope(this, true);
28
+ FocusManager.SetIsFocusScope(this, true);
29
- }
29
+ }
30
- ```
30
+ ```
31
-
31
+
32
32
  [フォーカスの概要 - WPF | Microsoft Docs](https://docs.microsoft.com/ja-jp/dotnet/framework/wpf/advanced/focus-overview)