gpt4 book ai didi

wpf - Silverlight 中缺少的某些 WPF 功能的解决方法

转载 作者:行者123 更新时间:2023-12-04 12:59:53 26 4
gpt4 key购买 nike

我正在将 WPF 应用程序移植到 silverlight 2,并且遇到了 SL 目前缺少的几个 WPF 功能。任何人都可以帮助我提供等价物或建议解决方法。

  • 我想处理嵌入在列表框中的文本框的点击和双击。 WPF 实现在列表框控件上使用 PreviewMouseLeftButtonDown/Up。这怎么能在silverlight中完成,似乎在silverlight中缺少PreviewMouseLeftButtonDown/Up。
  • 我想处理嵌入在列表框中的文本框上的按钮按下(F2/Delete)。 WPF 实现在作为项目嵌入列表框中的文本框控件上使用 PreviewKeyDown。 Silverlight 中似乎缺少 PreviewKeyDown。 KeyDown 事件处理程序似乎没有被调用。
  • 我想根据一些自定义附加属性的值更改文本框的一些外观属性。 WPF 实现使用 DataTrigger 来执行此操作。如何在 Silverlight 中做到这一点。 Silverlight 中似乎缺少 DataTriggers。
  • 我想根据包含文本框的列表框的实际宽度来更改文本框的宽度。 WPF 实现使用RelativeSource 绑定(bind)。什么是 silverlight 等效项或解决方法。
  • 最佳答案

    对于第 1 项和第 2 项,访问这些输入事件的最佳方法是创建一个从内置 TextBox 派生的自定义 TextBox。然后您可以覆盖 OnKeyDown 和 OnMouseLeftButton 向下。从那里您可以调用必要的代码,或触发一个新事件。例如。:

    public class MyTextBox : TextBox
    {
    public event MouseButtonEventHandler MySpecialMouseLeftButtonDown;

    protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
    {
    if (MySpecialMouseLeftButtonDown != null)
    {
    MySpecialMouseLeftButtonDown(this, e);
    }
    base.OnMouseLeftButtonDown(e);
    }
    }

    与 OnKeyDown 类似。

    关于wpf - Silverlight 中缺少的某些 WPF 功能的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/554570/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com