设置没有随附标签的 TextBox AccessText
Set TextBox AccessText without an accompanying Label
我在用户控件中有一系列没有附带标签的文本框。
我需要为用户提供一种按 Alt+(某些键)将焦点设置到每个文本框的方法。
如果我想使用内置的 WPF "AccessText" 方法来执行此操作,我需要在每个文本框旁边放置一个标签,并在快捷键前使用“_”字符指定内容, 并将每个标签的 "Target" 属性 指定到各自的文本框。
不幸的是,在这种情况下,每个文本框都没有标签,以后也不会有。
是否可以在没有标签的情况下为文本框指定 AccessText 快捷键?
您可以处理按键组合按下,然后将焦点放在 TextBox 上:
*.xaml:
<UserControl Loaded="UserControl_Loaded">
<Grid>
<StackPanel>
<TextBox Height="30" x:Name="txt1"/>
<TextBox Height="30" x:Name="txt2"/>
</StackPanel>
</Grid>
</UserControl>
*.cs
public UserControl()
{
InitializeComponent();
}
private void KeyDownEvent(object sender, KeyEventArgs e)
{
bool x = Keyboard.IsKeyDown(Key.System);
if (Keyboard.IsKeyDown(Key.System) && Keyboard.IsKeyDown(Key.B))// Alt+B
{
txt2.Focusable = true;
txt2.Focus();
}
}
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
var window = Window.GetWindow(this);
window.KeyDown += KeyDownEvent;
txt1.Focusable = true;
txt1.Focus();
}
}
我在用户控件中有一系列没有附带标签的文本框。 我需要为用户提供一种按 Alt+(某些键)将焦点设置到每个文本框的方法。
如果我想使用内置的 WPF "AccessText" 方法来执行此操作,我需要在每个文本框旁边放置一个标签,并在快捷键前使用“_”字符指定内容, 并将每个标签的 "Target" 属性 指定到各自的文本框。
不幸的是,在这种情况下,每个文本框都没有标签,以后也不会有。
是否可以在没有标签的情况下为文本框指定 AccessText 快捷键?
您可以处理按键组合按下,然后将焦点放在 TextBox 上:
*.xaml:
<UserControl Loaded="UserControl_Loaded">
<Grid>
<StackPanel>
<TextBox Height="30" x:Name="txt1"/>
<TextBox Height="30" x:Name="txt2"/>
</StackPanel>
</Grid>
</UserControl>
*.cs
public UserControl()
{
InitializeComponent();
}
private void KeyDownEvent(object sender, KeyEventArgs e)
{
bool x = Keyboard.IsKeyDown(Key.System);
if (Keyboard.IsKeyDown(Key.System) && Keyboard.IsKeyDown(Key.B))// Alt+B
{
txt2.Focusable = true;
txt2.Focus();
}
}
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
var window = Window.GetWindow(this);
window.KeyDown += KeyDownEvent;
txt1.Focusable = true;
txt1.Focus();
}
}