c#的button加快捷键时如何用下划线显示字母

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#的button加快捷键时如何用下划线显示字母相关的知识,希望对你有一定的参考价值。

我想为WPF的button设置快捷键,虽然在xaml里面前面加_会在按下alt+*时起作用,但是并不能在按键上显示带有下划线的字母,无法告知使用者哪个是快捷字母,网上说用&,但会有error,求高手指点

参考技术A 可以在设计界面的属性Text里, 在按钮文字后面加上 (&A)
代码里应该是这样:
button.Text = "按钮(&A)"

A 可以换成任意字母
参考技术B 1.一般做法是:
XAML中:

<UserControl.Resources>

<RoutedUICommand x:Key="ClickCommand" Text="Text" />
</UserControl.Resources>
<UserControl.CommandBindings>
<CommandBinding Command="StaticResource ClickCommand"
Executed="ClickHandler" />
</UserControl.CommandBindings>
<UserControl.InputBindings>
<KeyBinding Key="C" Modifiers="Ctrl" Command="StaticResource ClickCommand" />
</UserControl.InputBindings>
<Grid>
<Button Content="Click here" Command="StaticResource ClickCommand"/>
</Grid>
C#中:
private void ClickHandler(object sender, RoutedEventArgs e)

//handle click event

注意:CommandBinding一定要设置在命令目标的外围控件上,不然无法捕捉到CanExecute和Executed等路由事件。
原文链接:https://blog.csdn.net/startwithdp/article/details/39083765
这个你可以参考一下,希望有用!
参考技术C 微软的风格就是 &+字母,如保存 保存&S 参考技术D 可以用代码加的啊。本回答被提问者采纳

如何用C#代码触发button-click事件

参考技术A

一、基本的调用方法

1、button1.PerformClick();

2、button1_Click(null,null);

3、button_Click(null,new EventArgs());

二、利用反射调用

//建立一个函数  

private void callOnClick(Button btn)  

  

//建立一个类型  

Type t = typeof(Button);  

//参数对象  

object[] p = new object[1];  

//产生方法  

MethodInfo m = t.GetMethod("OnClick", BindingFlags.NonPublic | BindingFlags.Instance);  

//参数赋值。传入函数  

p[0] = EventArgs.Empty;  

//调用  

m.Invoke(btn, p);  

return;  

  

(此处空一行)

//调用例子。  

//调用Button1的onclick  

callOnClick(Button1);  

(此处空一行)

//调用Button5的onclick  

callOnClick(Button5);

扩展资料:

除了上述的button-click事件,还可以调用更多的事件

private void callButtonEvent(Button btn, string EventName)  

     

//建立一个类型      

Type t = typeof(Button);  

//参数对象      

object[] p = new object[1];  

//产生方法      

MethodInfo m = t.GetMethod(EventName, BindingFlags.NonPublic | BindingFlags.Instance);  

//参数赋值。传入函数      

//获得参数资料  

ParameterInfo[] para =  m.GetParameters();  

//根据参数的名字,拿参数的空值。  

p[0] = Type.GetType(para[0].ParameterType.BaseType.FullName).GetProperty("Empty");  

//调用      

m.Invoke(btn, p);  

return;  

  

(此处空一行)

//调用例子。  

//调用Button1的onclick  

callButtonEvent(Button1,"OnClick");  

(此处空一行)

//调用Button5的OnKeyPress  

callButtonEvent(Button5,"OnKeyPress");

以上是关于c#的button加快捷键时如何用下划线显示字母的主要内容,如果未能解决你的问题,请参考以下文章

c# 运行时如何用鼠标拖拽放大、缩小控件(像设计器那样的效果)

wpf中button怎么设置快捷键

下划线标签 C++ 的第一个字母(下划线不显示)

C#实现快捷键的几种常用方法汇总

C# winform加载子窗体很慢 如何用进度条显示

需要背景图片时如何用 CSS 切角?