2016-04-26 99 views
0

我试图做一个MessageBoxButtons.YesNo,我知道你可以做一个对话框formclosing,但我想为我的EXIT按钮之一。我得到这个错误在那里我将Button3MessageBox错误System.EventArgs不包含定义

这里是我的代码中声明e.Canel = true

using LOGINPAGE.Models; 
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace LOGINPAGE 
{ 
    public partial class FACULTY : Form 
    { 
     public FACULTY() 
     { 
      InitializeComponent(); 

      SetFloorsToDropDown(); 
     } 

     private void FACULTY_Load(object sender, EventArgs e) 
     { 
      // TODO: This line of code loads data into the 'roomInfoDataSet2.Table' table. You can move, or remove it, as needed. 
      this.tableTableAdapter1.Fill(this.roomInfoDataSet2.Table); 
      // TODO: This line of code loads data into the 'roomInfoDataSet1.Table' table. You can move, or remove it, as needed. 
      this.tableTableAdapter.Fill(this.roomInfoDataSet1.Table); 


     } 

     private void xButton5_Click(object sender, EventArgs e) 
     { 

      Floor.SelectedIndex = -1; 
     } 

     private void xButton2_Click(object sender, EventArgs e) 
     { 

      this.Close(); 
      Application.Exit(); 
     } 

     private void xButton3_Click(object sender, EventArgs e) 
     { 
      DialogResult dialog = MessageBox.Show("Do you want to Exit?", "Exit", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); 
      if (dialog == DialogResult.Yes) 
      { 
       Application.Exit(); 
      } 
      else 
      { 

       e.Cancel = true; 
      } 

     } 

     private void checkBox1_CheckedChanged(object sender, EventArgs e) 
     { 

     } 

     private void xButton1_Click(object sender, EventArgs e) 
     { 

     } 

     private void Floor_SelectedIndexChanged(object sender, EventArgs e) 
     { 
      dataGridView1.Rows.Clear(); 

      if (Floor.SelectedItem.ToString() != "SELECT FLOOR") 
      { 
       foreach (var item in roomInfoDataSet1.Table.Where(x => x.Room_Number.Substring(0, 1) == Convert.ToString(Floor.SelectedValue))) 
       { 
        string[] row = new string[] { item.Room_Number, Convert.ToString(Floor.SelectedValue) }; 

        dataGridView1.Rows.Add(row); 
        dataGridView1.ClearSelection(); 
        dataGridView1.Rows[dataGridView1.Rows.Count - 1].Selected = true; 
        dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.Rows.Count - 1; 
       } 
      } 
     } 

     private void SetFloorsToDropDown() 
     { 
      List<DropDownModel> floorList = new List<DropDownModel>(); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 0, 
       Name = "SELECT FLOOR", 
      }); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 1, 
       Name = "1st Floor", 
      }); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 2, 
       Name = "2nd Floor", 
      }); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 3, 
       Name = "3rd Floor", 
      }); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 4, 
       Name = "4th Floor", 
      }); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 5, 
       Name = "5th Floor", 
      }); 

      floorList.Add(new DropDownModel() 
      { 
       Id = 6, 
       Name = "6th Floor", 
      }); 

      Floor.DataSource = floorList; 
      Floor.DisplayMember = "Name"; 
      Floor.ValueMember = "Id"; 
     } 



     private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) 
     { 

     } 

     private void xButton1_Click_1(object sender, EventArgs e) 
     { 

     } 



    } 
} 
+2

您正在使用一个按钮。没有取消属性。只要放下'else'即可。 –

回答

0

所以,我的理解这个问题是在xButton3_Click()。将其更改为:

private void xButton3_Click(object sender, EventArgs e) 
{ 
    DialogResult dialog = MessageBox.Show("Do you want to Exit?", "Exit", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); 
    if (dialog == DialogResult.Yes) 
    { 
     Application.Exit(); 
    } 
} 

您不需要使用else。只是保持原样。如果用户选择“是”,则应用程序将关闭,否则不需要采取任何措施。

+0

是的,我得到它的工作!现在,有没有办法做到这一点打开不同的窗口?我猜这会是一样的?就好像如果消息框里说的是**,你想打开这个窗口吗?**并且他们碰到是或不是 – Programmer23

+1

我建议更新你的答案代码以向他展示他应该做的事情。 – Mikanikal

+0

@Mikanikal是的,你是对的。谢谢 – Marusyk

相关问题