Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 文本框控件的加速响应_Wpf_Textbox_Typing - Fatal编程技术网

Wpf 文本框控件的加速响应

Wpf 文本框控件的加速响应,wpf,textbox,typing,Wpf,Textbox,Typing,我使用WPF文本框控件作为聊天窗口->使用在文本框控件中键入聊天消息。 问题是,用户键入的文本框速度稍快,但反应缓慢。如果可能的话,我想以某种方式加速文本框的响应 任何想法。很难描述这个Beyevior,如果您有时间尝试,请快速键入此控件 编辑: 以下是textBox代码的原始部分: <TextBox Text="{Binding Path=RpText,Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"

我使用WPF文本框控件作为聊天窗口->使用在文本框控件中键入聊天消息。 问题是,用户键入的文本框速度稍快,但反应缓慢。如果可能的话,我想以某种方式加速文本框的响应

任何想法。很难描述这个Beyevior,如果您有时间尝试,请快速键入此控件

编辑:

以下是textBox代码的原始部分:

    <TextBox Text="{Binding Path=RpText,Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
             TextWrapping="Wrap"
             VerticalScrollBarVisibility="Auto" 
             FontSize="14"
             Margin="2,2,2,2" 
             Grid.Row="3"
             MinHeight="70"
             Micro:Message.Attach="[PreviewKeyDown]=[Action SendRp($eventArgs)]"/>

我省略了双向绑定,也省略了PreviewKeyDown,我认为这是一样的

这是文本框的修改代码

    <TextBox 
             TextWrapping="Wrap"
             VerticalScrollBarVisibility="Auto" 
             FontSize="14"
             Margin="2,2,2,2" 
             Grid.Row="3"
             MinHeight="70"/>

但我比较了在skype和gtalk中键入的反应,我认为将MS WPF控件与skype或gtalk中的“文本框控件”进行比较是愚蠢的

关于Asyc绑定,我尝试:

  <TextBox Text="{Binding Path=RpText,Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, IsAsync=True}"/>

文本在文本框控件中以相反的形式写入


例如,您键入:Hello,在textBox控件中输入olleH:)

绑定和事件处理程序可以减慢文本框的速度。是否有任何复杂的代码绑定到Text属性?您是否有任何会减慢文本框速度的事件处理程序


如果您负担不起降低绑定属性代码的复杂性,可以使用。如果您通过事件处理文本框的文本,请在一个单独的线程中执行大部分操作(这样GUI线程就不会慢下来)。

您好,谢谢您的反馈,我尝试实现您的建议,但我想说的是,这是一样的,也是Asyc绑定导致反向写入。Micro:Message.Attach=“[PreviewKeyDown]=[Action SendRp]是什么意思($eventArgs)]怎么办?如果没有帮助,我想你可以删除IsAsinc。我需要检查我用户按下enter键,它与PreviewKeyDown=“eventHandler”相同,只是我在这个文本框事件上从视图模型类绑定了方法。你是捷克人?:D我是斯洛伐克人:DD