XAML 对比 网络


在本章中,我们将在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> 

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

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 中实现该Behave。

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

<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中,实现了按钮点击事件(Behave)。此事件在消息框中显示消息。

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 

当上面的代码被编译并执行时,它将显示以下屏幕 -

留言箱

现在单击上面的“Click Me”按钮。它将显示以下消息 -

点我