【问题标题】:Change focus by Enter don't work with Telerik RadDropDownList通过 Enter 更改焦点不适用于 Telerik RadDropDownList
【发布时间】:2014-03-12 07:27:32
【问题描述】:

我使用以下代码通过按 Enter 键更改选项卡顺序,它适用于我表单的任何对象。但是当我将 RadDropDownList 的 AutoCompleteMode 属性更改为 "SuggestAppend" 时,然后 当我在 RaddropDown 上按 Enter 时,选项卡顺序没有改变,它留在这个控件上!!!!请帮忙解决这个问题。

protected override bool ProcessKeyPreview(ref Message m)
        {
            if (m.Msg == 0x0100 && (int)m.WParam == 13)
            {
                this.ProcessTabKey(true);
            }
  return base.ProcessKeyPreview(ref m);
    }

【问题讨论】:

  • 能否提供一个更完整的案例?
  • 亲爱的@checho ,通过使用发布的代码,我可以使用 Enter 作为赢表单应用程序上的 Tab 键,但问题是它在设置为 Autocompletemode="SuggestAppend 时对除 Telerik RadDropDownList 之外的任何对象都有效" 属性!!!
  • 正如我所提到的,我无法重现您提到的行为。我用我的测试捕获了一个视频:screencast.com/t/Xf2L0w18XGU
  • @checho,我看到它对你来说很好,但是,它对我不起作用,因为我像你所做的那样用新项目再次测试,但是当我设置为 Suggest Append 它没有为我工作!!!
  • 感谢@checho,我发现它与返回线有关,因为您只使用了“true”但我的是“base.ProcessKeyPreview(ref m)”,当我将其更改为 true 时像魅力一样工作:D

标签: winforms visual-studio-2010 c#-4.0 telerik


【解决方案1】:
  protected override bool ProcessKeyPreview(ref Message m)
    {
        if (m.Msg == 0x0100 && (int)m.WParam == 13)
        {
            this.ProcessTabKey(true);
        }
        //return base.ProcessKeyPreview(ref m);/////problem was with this line and when changet to following line it works Great !!
        **return true;** 
    }

感谢@checho,关于您的视频 VIDEO

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多