WPF - 第三方控件

第三方控件不是由 Microsoft 创建的,而是由某些个人或公司使用 WPF 用户控件或自定义控件创建的。 TelerikDevExpress 是创建第三方控件最受欢迎的公司。

在本章中,我们将使用 Telerik 控件。 因此,让我们从下面给出的步骤开始。

  • 转到包含 Telerik WPF 控件的链接 Telerik 并下载 WPF UI。

  • 下载完成后,将文件安装到您的计算机上。

  • 安装后,打开 Visual Studio 并创建一个名为 WPF3rdPartyControls 的新 WPF 项目。

  • 在 Toolbox 上,您将看到 Telerik UI 控件。 此外,您会发现在解决方案资源管理器中,安装后也会添加所有必需的 dll

第三方控件
  • 让我们扩展WPF 的 Telerik UI – 在工具箱中输入 2015 Q2。 您将看到许多内置控件。

Telerik UI
  • 现在将 RadCalculator 从工具箱拖到设计窗口。

  • 查看已添加 RadCalculator 标记的 XAML 窗口。

<Window  x:Class = "WPF3rdPartyControls.MainWindow" 
   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" 
   xmlns:local = "clr-namespace:WPF3rdPartyControls" 
   xmlns:telerik = "http://schemas.telerik.com/2008/xaml/presentation" 
   mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604"> 
	
   <Grid>
      <telerik:RadCalculator HorizontalAlignment = "Left" Margin = "174,25,0,0" 
         VerticalAlignment = "Top" /> 
   </Grid> 
	
</Window> 
  • 让我们编译并执行上面的代码。 您将在窗口上看到一个功能齐全的计算器,只需一行代码。

计算器
  • 这就是第三方控件的优点。 但它不是免费的,如果您想在应用程序中使用第三方控件,您需要购买许可证。

让我们看一下另一个 Telerik 控件。 创建一个名为 WPF3rdPartyControls 的新 WPF 项目。 从工具箱中拖动 RadDateTimePicker 控件。 XAML代码如下 −

<Window x:Class = "RadDateTimePickerDemo.MainWindow" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" 
   xmlns:telerik = "http://schemas.telerik.com/2008/xaml/presentation" 
   Title = "MainWindow" Height = "350" Width = "604"> 
	
   <Grid> 
      <telerik:RadDateTimePicker VerticalAlignment = "Top" 
         Name = "dateTimePicker" /> 
   </Grid> 
	
</Window> 

这里是实现选择 changed 事件的C# 代码

using System; 
using System.Windows; 
using System.Windows.Controls; 
 
namespace RadDateTimePickerDemo { 

   public partial class MainWindow : Window {
	
      public MainWindow() { 
         InitializeComponent(); 
         dateTimePicker.SelectionChanged += dateTimePicker_SelectionChanged; 
      } 
		
      void dateTimePicker_SelectionChanged( object sender, SelectionChangedEventArgs e ) { 
         DateTime? dt = dateTimePicker.SelectedValue; 
         DateTime? date = dateTimePicker.SelectedDate; 
         TimeSpan? time = dateTimePicker.SelectedTime; 
         MessageBox.Show( "Selected date/time: " + dt.ToString() ); 
      }
		
   } 
}

当您编译并执行上述代码时,将产生以下窗口。

第三方控件的输出

选择任意时间和日期,它将显示在消息框中。

消息框

示例

这是 RichTextBox 的示例。 以下 XAML 代码创建三个切换按钮和一个富文本框。

<Window x:Class = "RichTextBoxDemo.MainWindow"
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" 
   xmlns:telerik = "http://schemas.telerik.com/2008/xaml/presentation" 
   Title = "MainWindow" Height = "350" Width = "604">
	
   <Grid> 
      <StackPanel> 
         <StackPanel Orientation = "Horizontal"> 
            <ToggleButton Content = "B" x:Name = "BoldButton" Click = "BoldButton_Click" /> 
            <ToggleButton Content = "I" x:Name = "ItalicButton" 
               Click = "ItalicButton_Click" /> 
            <ToggleButton Content = "U"x:Name = "UnderlineButton" 
               Click = "UnderlineButton_Click" /> 
         </StackPanel> 
			
         <telerik:RadRichTextBox Height = "250" Width = "400" Name = "richTextBox"/> 
      </StackPanel> 
   </Grid> 
	
</Window>

这是按钮单击事件的C# 实现

using System.Windows;
 
namespace RichTextBoxDemo { 
   /// <summary> 
      /// Interaction logic for MainWindow.xaml 
   /// </summary>
	
   public partial class MainWindow : Window { 
	
      public MainWindow() { 
         InitializeComponent(); 
      }  
		
      private void BoldButton_Click( object sender, RoutedEventArgs e ) { 
         richTextBox.ToggleBold(); 
      }  
		
      private void ItalicButton_Click( object sender, RoutedEventArgs e ) { 
         richTextBox.ToggleItalic(); 
      } 
		
      private void UnderlineButton_Click( object sender, RoutedEventArgs e ) { 
         richTextBox.ToggleUnderline(); 
      } 
		
   } 
} 

当您编译并执行上述代码时,将产生以下窗口。 借助这三个按钮,您可以设置在富文本框中输入的文本格式(粗体、斜体、下划线)。

三个按钮

我们建议您尝试使用工具箱和实验中提供的其他控件。

❮ wpf_controls.html