如果您需要检查是否正在设置 DataContext 失败,则可以使用 DataContextChanged
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
DataContextChanged += new DependencyPropertyChangedEventHandler(UserControl1_DataContextChanged);
}
void UserControl1_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
{
// You can also validate the data going into the DataContext using the event args
}
}
请注意,在 DataContext 从 null 更改为不同的值之前,它不会输入 UserControl1_DataContextChanged。
不确定这是否回答了您的问题,但可以非常方便地用于调试问题。