XAML与VB.NET

在本章中,我们将在VB.Net中编写相同的示例,以便熟悉VB.Net的人也能理解XAML的优点.

让我们来看看在同一个例子中再次用XAML写的 :

<Window x:Class = "XAMLVsCode.MainWindow" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" Title = "MainWindow" Height = "350" Width = "604"> 
	
   <StackPanel> 
      <TextBlock Text = "Welcome to XAML Tutorial with VB.net" Height = "20" Width = "220" Margin = "5"/> 
      <Button Content = "Ok" Height = "20" Width = "60" Margin = "5"/> 
   </StackPanel> 
	
</Window>

在这个例子中,我们创建了一个带有按钮和Text块的堆栈面板,并定义了按钮和文本块的一些属性,例如高度,宽度和边距.当编译并执行上面的代码时,它将产生以下输出 :

Xaml Vb.net

现在看看用VB.Net写的相同代码 :

Public Class MainWindow
   Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs) 
      Dim panel As New StackPanel() 
      panel.Orientation = Orientation.Vertical 
      Me.Content = panel 
      Dim txtInput As New TextBlock 
		
      txtInput.Text = "Welcome to XAML Tutorial with VB.net" 
      txtInput.Width = 220 
      txtInput.Height = 20 
      txtInput.Margin = New Thickness(5) 
		
      panel.Children.Add(txtInput)  
      Dim btn As New Button()
		
      btn.Content = "Ok" 
      btn.Width = 60 
      btn.Height = 20 
      btn.Margin = New Thickness(5) 
		
      panel.Children.Add(btn)
   End Sub 
End Class

当编译并执行上述代码时,输出完全相同作为XAML代码的输出.

Xaml Vb.Net

你现在可以看出与VB.Net相比,使用XAML是多么简单.

在上面的例子中,我们已经看到我们在XAML中可以做的事情也可以在其他事情中完成程序语言,如C#和VB.Net.

让我们看看另一个我们将同时使用XAML和VB.Net的例子.我们将在XAML中设计一个GUI,行为将在VB.Net中实现.

在这个例子中,一个按钮被添加到主窗口.当用户单击此按钮时,它会在消息框中显示一条消息.下面是XAML中的代码,其中一个Button对象声明了一些属性.

<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 = "350" Width = "604"> 
	
   <Grid> 
      <Button Name = "btn" HorizontalAlignment = "Center" Width = "60" Height = "30" Content = "Click Me" /> 
   </Grid> 
	
</Window>

在VB.Net中,实现了按钮单击事件(行为).此事件在消息框上显示消息.

Public Class MainWindow
   Private Sub btn_Click(sender As Object, e As RoutedEventArgs) Handles btn.Click 
      MessageBox.Show("Button is Clicked") 
   End Sub 
End Class

当上面代码编译并执行,它将显示以下屏幕 :

Message Box

现在点击上面的"Click Me"按钮.它将显示以下消息 :

Click Me