小编Hug*_*ugo的帖子

如何以编程方式向 WPF ContextMenu 添加访问键(快捷方式)?

我已经有了以下内容:

var myContextMenu = new System.Windows.Controls.ContextMenu();

var exitItem = new MenuItem();
exitItem.Header = "E_xit";
exitItem.Item.Click += new RoutedEventHandler(new System.EventHandler(ExitProgram));
myContextMenu.Items.Add(exitItem);
Run Code Online (Sandbox Code Playgroud)

这会导致我的上下文菜单显示退出菜单项,并带有下划线“x”。但是,按 x 没有任何作用。单击菜单项工作正常。

如何将事件与 x 键关联?请注意,这必须在我的上下文中以编程方式完成。我无法在前面的 XAML 中编写此解决方案。

c# wpf menu shortcut

5
推荐指数
1
解决办法
6359
查看次数

子类中的构造函数顺序

在后代类中,有没有办法调用public,参数化构造函数以及protected/private构造函数,同时仍然调用基类的构造函数?

例如,给出以下代码:

using System;

public class Test
{
  void Main()
  {
    var b = new B(1);
  }

  class A
  {
    protected A()
    {
      Console.WriteLine("A()");
    }


    public A(int val)
      : this()
    {
      Console.WriteLine("A({0})", val);
    }

  }

  class B : A
  {
    protected B()
    {
      Console.WriteLine("B()");
    }

    public B(int val)
      : base(val)
    {
      Console.WriteLine("B({0})", val);
    }

  }
}
Run Code Online (Sandbox Code Playgroud)

给出的输出是:

A()
A(1)
B(1)
Run Code Online (Sandbox Code Playgroud)

但是,这正是我所期待的:

A()
B()
A(1)
B(1)
Run Code Online (Sandbox Code Playgroud)

有没有办法通过构造函数链来实现这一目标?或者我应该有一个OnInitialize()类型方法,A它是抽象的还是虚拟的,它被覆盖B并从受保护的无参数构造函数中调用A

c# constructor-chaining

3
推荐指数
1
解决办法
1371
查看次数

标签 统计

c# ×2

constructor-chaining ×1

menu ×1

shortcut ×1

wpf ×1