A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 苟于伟 中级黑马   /  2013-5-12 12:04  /  1160 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


  1. //当我对文本写入内容时它还是不执行 IsTextChangde = true;就造成 IsTextChangde一直等于false
  2. private void Form1_TextChanged(object sender, EventArgs e)
  3.         {
  4.             IsTextChangde = true;
  5.         }
  6.         

  7.         private void Form1_FormClosing(object sender, FormClosingEventArgs e)
  8.         {
  9.             if (IsTextChangde == true)
  10.             {
  11. //进不到if语句中。
  12.                 DialogResult re = MessageBox.Show("文本以修改是否保存", "消息", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
  13.                 if (re == DialogResult.Yes)
  14.                 {
  15.                     SaveText();

  16.                 }
  17.                 else if (re == DialogResult.No)
  18.                 {
  19.                 }
  20.                 else
  21.                 {
  22.                     e.Cancel = true; ;
  23.                 }
  24.             }
复制代码
进不到if语句中。至使不能弹窗。

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

2 个回复

倒序浏览
是你的事件写错了,你写的是Form1_textchanged你在文本框中输入值的话,窗体的内容是不会改变的,所应该将这个事件改成文本框的事件:例如你的文本框是txt1
就写成txt1_Textchanged(object sender,.........),后面是一样的

QQ截图20130512133120.png (2.93 KB, 下载次数: 0)

QQ截图20130512133120.png

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
当你对文本输入的时候触发的这个事件是针对Form的,
应该是
  1.         private void textBox1_TextChanged(object sender, EventArgs e)
  2.         {
  3.               IsTextChangde = true;
  4.         }
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马