首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在WPF中从另一个窗口调用方法

如何在WPF中从另一个窗口调用方法
EN

Stack Overflow用户
提问于 2012-05-24 05:34:05
回答 3查看 3.8K关注 0票数 2

我有两个用于显示用户列表的窗口win1和另一个用于添加用户的win2

我也有一个方法,可以在删除、更新或添加用户后刷新网格。此方法是在win1中实现的。

如何在添加用户后从win2调用此方法?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-24 06:03:05

这是一个非常基本的面向对象设计问题。因此,您希望在win2上添加用户后,能够从win2回调到win1中的函数。那么,win2是否有对win1对象的引用呢?如果是这样,那么你就是这么叫它的。如果不是,那么你需要给它一个(传递给构造器或其他东西)。

或者,如果您使用的是MVVM框架,则可以使用Messenger。大多数MVVM框架都包含了一个,它们非常有用。我建议走这条路,除非这是某种一次性的程序,不值得这样做。

票数 2
EN

Stack Overflow用户

发布于 2012-05-24 06:03:28

  • 您可以在父窗口的子窗口中使用自定义事件

window侦听

  • 您可以在子窗口中定义一个引用父窗口中的方法的委托

  • 您可以使用某种形式的信使:以下是一个示例:

http://blog.galasoft.ch/archive/2009/09/27/mvvm-light-toolkit-messenger-v2-beta.aspx

票数 1
EN

Stack Overflow用户

发布于 2012-05-24 08:47:09

如果从窗口1打开窗口2,则可以执行以下操作:

代码语言:javascript
运行
复制
// code in Window1
public void AddNewUser()
{
    Window2 window = new Window2();
    if (window.ShowDialog() == true)
    {
        // Update DataGrid
        RefreshDataGrid();
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10728209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档