Mega Code Archive

 
Categories / VB.Net Tutorial / WPF
 

DataContextProperty OverrideMetadata to update DataContext

<Window x: Class="WpfApplication1.Window1"   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   Title="Window1" Height="100" Width="200">   <StackPanel>     <TextBox x:Name="tbxUserText" Text="Enter some text..."/>     <Button Click="Button_Click" Content="Update DataContext"/>   </StackPanel> </Window> //File:Window.xaml.vb Imports System.Windows Imports System Namespace WpfApplication1   Public Partial Class Window1     Inherits Window     Public Sub New()       InitializeComponent()       DataContextProperty.OverrideMetadata(GetType(Window1), New FrameworkPropertyMetadata(100.0, New PropertyChangedCallback(AddressOf DataContext_PropertyChanged)))     End Sub     Private Shared Sub DataContext_PropertyChanged(d As DependencyObject, e As DependencyPropertyChangedEventArgs)       Dim msg As String = String.Format("DataContext changed.{0}{0}Old Value: {1}{0}New Value: {2}", Environment.NewLine, e.OldValue.ToString(), e.NewValue.ToString())       MessageBox.Show(msg, "changed")     End Sub     Private Sub Button_Click(sender As Object, e As RoutedEventArgs)       DataContext = tbxUserText.Text     End Sub   End Class End Namespace