WPF中点击MainWindow按钮触发UserControl内updateView()方法
要实现这个需求,你只需要完成以下几个简单步骤:
步骤1:给XAML中的UserControl指定名称
在MainWindow.xaml里,为你的UserControl添加x:Name属性,让后台代码能直接获取到它的实例:
<local:UserControl x:Name="myUserControl"></local:UserControl> <Button x:Name="btn_start" Click="btn_start_Click"></Button>
步骤2:修改UserControl中updateView方法的访问权限
原代码里的updateView是private修饰的,外部无法访问,需要将其改为public或者internal:
public void updateView() { // 保留原有业务逻辑 }
步骤3:在MainWindow的按钮点击事件中调用方法
现在可以直接通过UserControl的实例调用updateView方法:
private void btn_start_Click(object sender, RoutedEventArgs e) { myUserControl.updateView(); }
如果想遵循更严格的封装原则,也可以通过事件订阅、依赖属性等方式实现间接调用,但对于这类简单场景,上面的方法是最直接高效的。
内容的提问来源于stack exchange,提问作者user16365685
相关产品推荐
相关产品推荐

