WPF - Controlli di terze parti

I controlli di terze parti sono quelli che non vengono creati da Microsoft ma vengono creati da un individuo o da un'azienda utilizzando il controllo utente WPF o il controllo personalizzato. Telerik e DevExpress sono le aziende più popolari per la creazione di controlli di terze parti.

In questo capitolo useremo i controlli di Telerik. Quindi iniziamo seguendo i passaggi indicati di seguito.

  • Vai al collegamento Telerik che contiene i controlli WPF di Telerik e scarica l'interfaccia utente per WPF.

  • Una volta completato il download, installa i file sul tuo computer.

  • Dopo l'installazione, apri Visual Studio e crea un nuovo progetto WPF con il nome WPF3rdPartyControls.

  • In Toolbox, vedrai i controlli dell'interfaccia utente di Telerik. Inoltre, osserverai che in Esplora soluzioni, tutti i filedll vengono aggiunti anche dopo l'installazione.

  • Espandiamo il file Telerik UI for WPF – input 2015 Q2nella cassetta degli attrezzi. Vedrai molti controlli integrati.

  • Ora trascina RadCalculator dalla casella degli strumenti alla finestra di progettazione.

  • Dai un'occhiata alla tua finestra XAML in cui è stato aggiunto il tag RadCalculator.

<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>
  • Compiliamo ed eseguiamo il codice sopra. Vedrai una calcolatrice completamente funzionante sulla tua finestra con una sola riga di codice.

  • Questa è la bellezza dei controlli di terze parti. Ma non è gratuito, dovrai acquistare una licenza se desideri utilizzare controlli di terze parti nella tua applicazione.

Diamo un'occhiata a un altro controllo Telerik. Crea un nuovo progetto WPF con il nomeWPF3rdPartyControls. Trascina il controllo RadDateTimePicker dalla casella degli strumenti. Il codice XAML è il seguente:

<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>

Ecco il file C# code in cui viene implementato l'evento di modifica della selezione.

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() ); 
      }
		
   } 
}

Quando compili ed esegui il codice sopra, verrà prodotta la seguente finestra.

Seleziona qualsiasi ora e data e verrà visualizzato nella finestra del messaggio.

Esempio

Ecco un esempio di RichTextBox. Il codice XAML seguente crea tre pulsanti di attivazione / disattivazione e una casella di testo RTF.

<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>

Ecco il file implementation in C# per l'evento clic del pulsante.

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(); 
      } 
		
   } 
}

Quando compili ed esegui il codice sopra, verrà prodotta la seguente finestra. Con l'aiuto dei tre pulsanti, puoi formattare il testo (grassetto, corsivo, sottolineato) digitato all'interno della casella di testo RTF.

Ti consigliamo di provare a utilizzare gli altri controlli disponibili nella tua casella degli strumenti e di sperimentare.