窗体中 如果 信息没有保存,则不允许操作其他模块,提示:请将本单位信息填写完整 我有一个WinForm 程序 想实现上面的功能 可是不知道怎么写 高手 帮帮我吧 快崩溃了都

解决方案 »

  1.   

    最简单的方式就是:你用ShowDialog()的方式打开一个新窗口,这样其它模块都不让点击的。
      

  2.   

    有一个窗体 这个窗体需要填写数据 若是没有点击保存 就不能离开这个页面 还是提示 用showdialog 不太清楚 能不能贴 代码 瞅瞅啊
      

  3.   

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;namespace WindowsApplication1
    {
        public partial class Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();
            }
            bool modified; 
            private void button1_Click(object sender, EventArgs e)
            {
                //save data
                modified = true;
               
            }        private void Form2_Load(object sender, EventArgs e)
            {
                modified = false;
                this.FormClosing+=new FormClosingEventHandler(Form2_FormClosing);
            }        void Form2_FormClosing(object sender, FormClosingEventArgs e)
            {
                if (modified == false)
                {
                    MessageBox.Show("数据没有保存,请点击保存按钮!");
                    e.Cancel=true;
                }
            }    }
    }
    将Form2 窗体以ShowDialog的方式显示。
      

  4.   

    如果你这个窗体仅是填写本单位信息,没有其他弹出窗体的操作,按照8楼的操作就可以。如果本页面还有其他按钮,用来弹出窗体,那就在form_load里,把其他按钮的Enabled=False ;只有在点保存按钮后(保存信息成功),再把其他按钮的Enabled=True,方法很多,LZ自己选择
      

  5.   

    click事件  或者其让显示窗体的地方。showdialog.
      

  6.   

    奉献一套商业进销存系统 C#2005代码,需要的请下载。总共六卷。文档另分一卷,下载地址http://applemacosx.download.csdn.net/
      

  7.   

    private   void   frmMain_FormClosing(object   sender,   FormClosingEventArgs   e)   
                      {   //遍历窗体控件,判断数据是否一致,设置全局标识
                              if   (MessageBox.Show(this,   "是否退出系统?",   "系统",   MessageBoxButtons.YesNo,   MessageBoxIcon.Question,   MessageBoxDefaultButton.Button1)   ==   DialogResult.No)   
                              {   
                                      e.Cancel   =   true;   
                              }   
                              
                      }
      

  8.   

    private void button1_Click(object sender, EventArgs e)
    {
     Form2 form2 = new Form2();
    form2.ShowDialog();
    form2.Dispose();
    }
      

  9.   

    编一个函数,这个函数实现的功能是:去查询单位信息,如果单位信息中有一个信息时""||null的情况,就给出提示:“请将本单位信息填写完整” ,返回false.把这个函数放进其他模块的click方法里,如果这个函数的返回值是true,就ShowDialog()其他模块的窗口;反之不打开窗口。
      

  10.   

    支持8楼的方法。需要四个处理步骤: (1)设置一个表示是否已修改的全局变量
    (2)在TextBox之类的编辑控件的valueChaned事件中设置已修改状态
    (3)在保存事件完成之后,初始化 已修改状态
    (4)窗口关闭事件中,判断是否保存,没保存时,忽略关闭事件。
      

  11.   

    лл��λ�����Ѿ�ʵ���ˣ���ʹ���Ӵ��� ShowDialog() ��ʽ��Ȼ������Ӵ����λ�ã��û��������� �رմ��塣 �����л  xingyuebuyu ��  HELLOWORDC �ķ�ʽҲ����ʵ�֣��������Ҫ�鷳һЩ   лл ^_^ 
      

  12.   

    谢谢各位,我应该实现了,是使用子窗体 ShowDialog() 方式,然后控制子窗体的位置,用户点击保存之后,关闭当前窗体  在此谢谢 xingyuebuyu  和 HELLOWORD ; HELLOWORD 的方式也可以实现,要相对麻烦一些 不过还是要谢谢HELLOWORD 。 结贴了 嘿嘿 ^_^