【发布时间】:2018-04-01 01:57:12
【问题描述】:
完成项目:https://uploadfiles.io/wz8ji
关注代码:
代码 C#:
public partial class MainWindow : MetroWindow
{
public MainWindow()
{
InitializeComponent();
}
private void Textbox_KeyUp(object sender, KeyEventArgs e)
{
if (textbox.Text != string.Empty)
{
this.ShowMessageAsync("This is the title", "Some message");
}
}
}
代码 xaml:
<Controls:MetroWindow x:Class="Wpf.MainWindow"
xmlns:Controls="http://metro.mahapps.com/winfx/xaml/controls"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid>
<TabControl HorizontalAlignment="Left" Height="324" Margin="88,31,0,0" VerticalAlignment="Top" Width="605">
<TabItem Header="TabItem">
<Grid Background="#FFE5E5E5">
<TextBox
x:Name="textbox"
HorizontalAlignment="Left"
Height="23"
Margin="10,10,0,0"
TextWrapping="Wrap"
Text="TextBox"
VerticalAlignment="Top"
Width="120"
KeyUp="Textbox_KeyUp"/>
</Grid>
</TabItem>
<TabItem Header="TabItem">
<Grid Background="#FFE5E5E5"/>
</TabItem>
</TabControl>
</Grid>
</Controls:MetroWindow>
在我的文本框中,当我快速擦除并键入时,该事件被重复。当我正常删除并输入“1”时,一切都很好。问题是当我删除并输入任何非常快的字符时。当我快速执行此操作时,事件会重复。
我也用这个:http://mahapps.com/
我在没有使用“mahapps”的情况下创建了另一个项目,它工作正常。
事情是这样发生的:
按下退格键并快速松开+1键。
任何解决方案?
【问题讨论】:
-
你能添加这个方法分配给的所有事件吗?
-
嗯,让我试试你的代码
-
@PaulTsai 没有其他的了,仅此而已。
-
@MatheusMiranda 看起来您更新了代码以包含 xaml。
-
if 中的什么动作用于验证方法是否被调用?消息框?调试?
标签: c# wpf mahapps.metro