没有Source的Binding, 使用DataContext作绑定源;
(实现与案例A一样的功能):
前端:
<Grid>
<StackPanel>
<Button Name="btnTest" Content="测试" Height="100" Click="btnTest_Click"/>
<TextBlock Name="tblkText" Text="{Binding Path=StuName}" TextAlignment="Center" Height="100"/>
</StackPanel>
</Grid>
Model:
public class Student : INotifyPropertyChanged
{
private string stuName;
public string StuName
{
get { return stuName; }
set
{
stuName = value;
if (PropertyChanged != null)
{
this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("StuName"));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
}
ViewModel:
public partial class MainWindow : Window
{
private Student myStu=new Student();
public MainWindow()
{
InitializeComponent();
myStu.StuName = "init+ ";
this.DataContext = myStu;
}
private void btnTest_Click(object sender, RoutedEventArgs e)
{
myStu.StuName += "ab";
}
}