Binding Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Definisce un'associazione che connette le proprietà delle destinazioni di associazione e delle origini dati.
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Binding : BindingBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Binding : BindingBase
Public Class Binding
Inherits BindingBase
<Binding .../>
- or -
<dependencyobject dependencyproperty="{Binding bindingArgs}" />
- Ereditarietà
- Attributi
Esempio
L'esempio di codice seguente illustra come creare un'associazione in XAML. Per l'elenco di codice completo, vedi l'esempio di data binding XAML .
<StackPanel Margin="5">
<TextBlock Text="Name:" Style="{StaticResource DescriptionTextStyle}"
Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>
<TextBox Text="{Binding Path=Name, Mode=TwoWay}"
Width="350" Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>
<TextBlock Text="Organization:" Style="{StaticResource DescriptionTextStyle}"
Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>
<!-- You can omit the 'Path=' portion of the binding expression. -->
<TextBox Text="{Binding Organization, Mode=TwoWay}" Width="350"
Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>
</StackPanel>
Il codice di esempio seguente illustra come creare un'associazione nel codice.
// Create the source string.
string s = "Hello";
// Create the binding description.
Binding b = new Binding();
b.Mode = BindingMode.OneTime;
b.Source = s;
// Attach the binding to the target.
TextBlock MyText = new TextBlock();
MyText.SetBinding(TextBlock.TextProperty, b);
// Create the source string.
String^ s = ref new String(L"Hello");
// Create the binding description.
Binding^ b = ref new Binding();
b->Mode = BindingMode::OneTime;
b->Source = s;
// Attach the binding to the target.
TextBlock^ MyText = ref new TextBlock();
MyText->SetBinding(MyText->TextProperty, b);
Commenti
La estensione di markup {Binding} consente di specificare un valore binding come una singola stringa di attributo in XAML, inclusa l'impostazione delle proprietà binding, ad esempio Path e Source. Per altre informazioni sui concetti relativi al data binding, vedere Data binding approfondito.
La classe Binding può essere considerata l'esposizione code-behind dell'estensione di markup {Binding}. Se un binding è già applicato a una destinazione (che si verifica quando viene caricato XAML), non è possibile impostare le proprietà di lettura/scrittura di un oggetto Binding per modificare il comportamento di un'associazione in fase di esecuzione. Qualsiasi associazione definita da XAML deve essere considerata non modificabile. È tuttavia possibile creare un nuovo oggetto Binding, impostarne le proprietà e stabilire una nuova associazione in una destinazione dell'elemento dell'interfaccia utente specifica usando FrameworkElement.SetBinding. Per altre informazioni, vedere Creazione di associazioni nel codice.
Un oggetto Binding connette una proprietà di dipendenza di un FrameworkElement direttamente a un oggetto dati in modo che gli aggiornamenti all'oggetto dati vengano propagati automaticamente alla proprietà che utilizza il data binding. La classe Binding definisce le proprietà di un'associazione. Ogni associazione deve avere un elemento di destinazione, una proprietà di destinazione e un'origine dati, anche se alcuni valori vengono forniti per impostazione predefinita se non vengono specificati.
Per eseguire l'associazione a una proprietà o a una sottoproprietà in un oggetto dati, impostare la proprietà path
È possibile applicare un'istanza di una classe Binding a più destinazioni. Tuttavia, non è possibile modificare i valori delle proprietà di un oggetto Binding dopo averlo collegato a un elemento di destinazione.
Nota
La chiamata al metodo
Per altre info sull'utilizzo degli attributi XAML per le proprietà che possono accettare un binding o che altrimenti possono essere impostate su un valore associato a dati, vedi estensione di markup {Binding}.
La proprietà che rappresenta la destinazione di un data binding deve essere una proprietà di dipendenza. Per altre informazioni, vedere panoramica delle proprietà di dipendenza .
Costruttori
Binding() |
Inizializza una nuova istanza della classe binding |
Proprietà
Converter |
Ottiene o imposta l'oggetto convertitore chiamato dal motore di associazione per modificare i dati passati tra l'origine e la destinazione o viceversa. |
ConverterLanguage |
Ottiene o imposta un valore che assegna un nome alla lingua da passare a qualsiasi convertitore specificato dalla proprietà converter |
ConverterParameter |
Ottiene o imposta un parametro che può essere utilizzato nella logica |
Dispatcher |
Restituisce sempre |
DispatcherQueue |
Ottiene il |
ElementName |
Ottiene o imposta il nome dell'elemento da utilizzare come origine di associazione per l'Binding. |
FallbackValue |
Ottiene o imposta il valore da utilizzare quando l'associazione non è in grado di restituire un valore. |
Mode |
Ottiene o imposta un valore che indica la direzione del flusso di dati nell'associazione. |
Path |
Ottiene o imposta il percorso della proprietà di origine dell'associazione. |
RelativeSource |
Ottiene o imposta l'origine dell'associazione specificandone la posizione rispetto alla posizione della destinazione dell'associazione. Questa operazione viene spesso usata nelle associazioni all'interno dei modelli di controllo XAML. |
Source |
Ottiene o imposta l'origine dati per l'associazione. |
TargetNullValue |
Ottiene o imposta il valore utilizzato nella destinazione quando il valore dell'origine è null. |
UpdateSourceTrigger |
Ottiene o imposta un valore che determina la tempistica degli aggiornamenti dell'origine dell'associazione per le associazioni bidirezionali. |
Metodi
ClearValue(DependencyProperty) |
Cancella il valore locale di una proprietà di dipendenza. (Ereditato da DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva. (Ereditato da DependencyObject) |
GetValue(DependencyProperty) |
Restituisce il valore effettivo corrente di una proprietà di dipendenza da un DependencyObject. (Ereditato da DependencyObject) |
ReadLocalValue(DependencyProperty) |
Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale. (Ereditato da DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra una funzione di notifica per l'ascolto delle modifiche apportate a una specifica DependencyProperty in questa istanza DependencyObject. (Ereditato da DependencyObject) |
SetValue(DependencyProperty, Object) |
Imposta il valore locale di una proprietà di dipendenza in un DependencyObject. (Ereditato da DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback. (Ereditato da DependencyObject) |
Si applica a
Vedi anche
- <xref:Microsoft.UI.Xaml.Data.BindingOperations.SetBinding(Microsoft.UI.Xaml.DependencyObject%2cMicrosoft.UI.Xaml.DependencyProperty%2cMicrosoft.UI.Xaml.Data.BindingBase)%0a(bindingoperations_setbinding_746099660.md)>
- esempio di data binding XAML
- data binding approfondito
- panoramica delle proprietà di dipendenza
- sintassi property-path