下图显示了我的项目。
以下是我的测试需求的项目代码。
<Window x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="150" Width="400">
<Grid>
<TextBox Name="TextBox1" Width="200" Height="30" HorizontalAlignment="Left" Background="Pink" />
<Button Name="Button1" Content="Button1" Width="125" Height="30" HorizontalAlignment="Right" IsEnabled="False" />
</Grid>
</Window>
...
Class MainWindow
Private Sub MainWindow_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
TextBox1.Text = "Hello"
End Sub
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.Windows.Controls.TextChangedEventArgs) Handles TextBox1.TextChanged
Button1.IsEnabled = True
End Sub
End Class
当我运行由于MainWindow_Loaded事件而触发的TextBox1_TextChanged事件之上的代码时。
您是否知道如何在MainWindow_Loaded之后触发TextBox1_TextChanged事件?
答案 0 :(得分:0)
当textbo1生成其文本属性更改并且正在触发事件时。在像
这样加载表单后,您可以向textbox1添加事件处理程序Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
AddHandler TextBox1.TextChanged, AddressOf TextBox1_TextChanged
End Sub
Private Sub TextBox1_TextChanged()
Button1.Enabled = True
End Sub End Class
答案 1 :(得分:0)
如果仅在文本框中包含某些文本时才启用该按钮,则需要在事件处理程序中检查该按钮。如果您需要任何其他验证,也可以在此处执行此操作。
Private Sub TextBox1_TextChanged(sender As Object, e As TextChangedEventArgs) Handles TextBox1.TextChanged
Button1.IsEnabled = (TextBox1.Text.Length > 0)
End Sub
答案 2 :(得分:0)
解决。
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.Windows.Controls.TextChangedEventArgs) Handles TextBox1.TextChanged
If TextBox1.IsFocused Then
Button1.IsEnabled = True
End If
End Sub