asp.net子表單重新整理父表單(委託)方法

來源:互聯網
上載者:User

子表單 ff=new 子表單

 代碼如下 複製代碼
ff.showdialog();
if (子表單.DialogResult==DialogResult.Ok)
{
       datashow();
}

這個方法寫在父表單的button_click事件中就可以啦

還有一種方法就是利用了asp.net中的委託(通過類比,ASP.NET 能夠在一個經過身分識別驗證和授權的使用者上下文中執行代碼和訪問資源,但是只能在運行 ASP.NET 的伺服器上進行。若要代表所類比的使用者訪問其他電腦上的資源,需要身分識別驗證委託(簡稱委託)。可以將委託看作是一種更強大的類比形式,因為它通過網路啟用類比)來做了。下面我們來看個執行個體

先來看看委託簡單實

 代碼如下 複製代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TestMouseMove
{
    public delegate void SetVisiableHandler();

    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form3 frm = new Form3(new SetVisiableHandler(SetVisiable));
            frm.Show();
        }

        private void SetVisiable()
        {
            SetVisiable(this.label1, !this.label1.Visible);
        }

        private void SetVisiable(Control control, bool visiable)
        {
            if (this.Controls.Contains(control))
            {
                control.Visible = visiable;
            }
        }

    }
}

form3

 代碼如下 複製代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TestMouseMove
{
    public partial class Form3 : Form
    {
        private SetVisiableHandler m_setVisible;

        public Form3(SetVisiableHandler setvisible)
        {
            InitializeComponent();
            this.m_setVisible = setvisible;
        }
        private void btnVisible_Click(object sender, EventArgs e)
        {
            if (this.m_setVisible != null)
            {
                this.m_setVisible();
            }
        }

    }
}

關於委託
1.命名空間定義一個委託 delegate void CustomEventHandler()

2.使用者控制項 定義事件 public event CustomEventHandler CutomEvent(); 然後再合適的地方調用 CutomEvent();

3.別人在頁面裡註冊他的方法: UserControlInstance.CustomEvent(CustomMethod); CustomMethod為他自己的方法(重新綁定資料之類。),簽名要和委託一致

  (註:註冊方法每次pageload 都要執行)

如果你不瞭解委託可以參考  http://msdn.microsoft.com/zh-cn/library/aa291350(v=vs.71).aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.