惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Apple Machine Learning Research
Apple Machine Learning Research
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
G
Google Developers Blog
博客园 - 司徒正美
J
Java Code Geeks
aimingoo的专栏
aimingoo的专栏
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
WordPress大学
WordPress大学
T
The Blog of Author Tim Ferriss
D
Docker
大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
腾讯CDC
V
Visual Studio Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Check Point Blog
M
MIT News - Artificial intelligence
Jina AI
Jina AI
I
InfoQ
雷峰网
雷峰网
The Cloudflare Blog
美团技术团队
Engineering at Meta
Engineering at Meta

博客园 - David

TFS Server 不存在时,如何去除对应Server的Workspaces 更改已有程序集中的资源 记录:如何删除TFS Project SQL – TRUNCATE vs DELETE SQL – Character data (varchar) 又好久没写东西了! Powershell: Send mail with attachment 【Update】 - David SSIS: Execute SSIS Package in command prompt 【Update】 随感 Windows Workflow Foundation 了解 通过代码将Word 2007 template (dotx)文档转换Word 2007 (docx)文档(续) 通过代码将Word 2007 template (dotx)文档转换Word 2007 (docx)文档 创建Word2007文档而无需安装Word2007 Visual WebGUI - 如何处理MessageBox的DialogResult值 Visual WebGUI Report - 导出到PDF Visual WebGUI 在 Vista IIS 7 中的配置 项目管理片语 - Schedule 在IIS 7设置ASP.NET 1.1(在Vista中使用VS2003) 给儿子的歌!
Visual WebGUI - 如何将Dialog的结果传回主窗体
David · 2008-01-13 · via 博客园 - David

在用WebGUI开发过程中,发现无法得到弹出窗体(Dialog)要返回的值,因此就到处搜索了一番,结果在WebGUI的网站找到了这个视频 How to return parameters from dialogs? 。里面分有几个步骤:

1、先在Dialog中设置一个Boolean变量 IsCompleted ,其实最好用公开的属性(Public Property)啦!然后,根据需要返回的结果,来设置其他的属性。如:

        #region Properties
        private bool isCompleted = false;
        public bool IsCompleted
        {
            get
            {
                return isCompleted;
            }
            set
            {
                isCompleted = value;
            }
        }

        private Guid productId = System.Guid.Empty;
        public Guid ProductId
        {
            get
            {
                return productId;
            }
            set
            {
                productId = value;
            }
        }
        #endregion

2、然后,在准备关闭Dialog返回主窗时,在按钮事件或者其他事件中设置属性的值。如:

this.IsCompleted = true;
this.ProductId = new Guid(txtProductId.Text);
this.Close();

3、接着,挺重要的,就是在弹出Dialog时,设置关闭它后的事件。就是Closed事件。如:

        FrmFindProd objFindProd = new FrmFindProd();
        objFindProd.Closed += new EventHandler(objFindProd_Closed);
        objFindProd.ShowDialog();
 
        void objFindProd_Closed(object sender, EventArgs e)
        {
            FrmFindProd objFindProd = sender as FrmFindProd;
            if (objFindProd.IsCompleted)
            {
                this.ProductId = objFindProd.ProductId;
            }
        }

就这样。在关闭Dialog后,将会获得从Dialod返回的结果。Smile