⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tenementpanel.cs

📁 社区管理系统
💻 CS
📖 第 1 页 / 共 3 页
字号:
        }
        private void bDelete2_Click(object sender, EventArgs e)
        {
            if (selectedIndex == -1) return;
            String cmd = generateDeleteCommand2();
            int affectRows = DBManager.Execute(cmd);
            if (affectRows == -1)
            {  //数据库出错
                MessageBox.Show(DBManager.errorMessage);
                return;
            }
            else if (affectRows == 0)
            {
                MessageBox.Show("此数据已被其他登陆用户删除");
            }
            if (selectedIndex2 == dataGridView2.Rows.Count - 2)
            {
                dataGridView2.Rows.Remove(dataGridView2.Rows[selectedIndex2]);
                selectedIndex2--;
                if (selectedIndex2 == -1)
                {//若DataGridView没有数据则重置界面
                    reset2();
                    return;
                }
            }
            else dataGridView2.Rows.Remove(dataGridView2.Rows[selectedIndex2]);
            showDetailInfo2(selectedIndex2);
        }
        private void bAdd2_Click(object sender, EventArgs e)
        {
            if (selectedIndex == -1) {
                MessageBox.Show("先选择添加到的住户");
                return;
            }
            Int64 id = (Int64)dataGridView.Rows[selectedIndex].Cells["住户编号"].Value;
            String cmd;
            if (checkInput2("Insert") == false) return;//用户输入错误

            cmd = generateSelectCommand2();    //首先查找数据库中有没有相同内容的行
            DataTable dataTable = DBManager.ExecuteSelectCommand(cmd);
            if (dataTable == null)
            {  //数据库出错
                MessageBox.Show(DBManager.errorMessage);
                return;
            }
            else if (dataTable.Rows.Count > 0)
            {
                MessageBox.Show("数据库中已存在相同信息");
                return;
            }

            //将信息添加到数据库
            cmd = generateInsertCommand2(id);    //根据输入情况生成相应的命令

            int affectedRows = DBManager.Execute(cmd);

            if (affectedRows == -1)
            {  //数据库出错
                MessageBox.Show(DBManager.errorMessage);
                return;
            }
            else if (affectedRows == 0)
            {//
                MessageBox.Show("插入失败");
                return;
            }
            else
            {//插入成功,
                showDetailInfo2(selectedIndex2);//显示插入前的一行

                /*DataRow row = new DataRow();
                row.set
                row.ItemArray={insertDealID,tbName.Text};
                DataGridViewCell[] cell = new DataGridViewCell[6];
                for (int i = 0; i < 6; i++) cell[i] = new DataGridViewCell();
                row.Cells = cell;
                row.Cells[0].Value=insertDealID;
                row.Cells[1].Value=tbName.Text;
                row.Cells[2].Value=cbSex.Text;
                row.Cells[3].Value=int.Parse(tbAge.Text);
                row.Cells[4].Value=tbWork.Text;
                row.Cells[5].Value=cbPreferedCategory.Text;
                row.Cells[6].Value=tbPreferedArea.Text;

                dataGridView.Rows.Add(row);
                int idx = dataGridView.Rows.IndexOf(row);
                selectedIndex = idx;
                showDetailInfo(idx);
              */
            }
        }
        private void dataGridView2_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex == -1 || e.RowIndex >= dataGridView.Rows.Count - 1) return; //选择多行或选择列标签
            showDetailInfo2(e.RowIndex);
            selectedIndex2 = e.RowIndex;
        }
        private void reset2()
        {
            ID2 = 0;
            selectedIndex2 = -1;
            bModify2.Enabled = false;
            bDelete2.Enabled = false;
            button10.Enabled = false;
            tbMemberTel.Text = "";
            tbMemberSex.Text = "";
            tbMemberName.Text = "";
            tbRelation.Text = "";
        }
        private void showDetailInfo2(int idx)
        {
            if (idx < 0) return;
            selectedIndex2 = idx;
            ID2 = (Int64)dataGridView2.Rows[idx].Cells["住户编号"].Value;//得到用户选择的行的主键
            DataTable dt = DBManager.ExecuteSelectCommand(String.Format("select * from 家庭成员信息 where 住户编号='{0}'", ID2));
            if (dt == null)
            {//数据库错误
                MessageBox.Show(DBManager.errorMessage);
                ID = 0;
                return;
            }
            else if (dt.Rows.Count == 0)
            {  //未找到此记录
                MessageBox.Show("此记录可能已被其他用户删除");
                ID = 0;
                return;
            }

            tbMemberTel.Text=(Int64)dt.Rows[0]["移动电话"]+"";
            tbMemberName.Text=(String) dt.Rows[0]["家庭成员姓名"];
            tbMemberSex.Text=(String)dt.Rows[0]["性别"];
            tbRelation.Text=(String)dt.Rows[0]["家庭关系"];

            bModify2.Enabled = true;//此时可以操作修改、删除数据
            bDelete2.Enabled = true;
            button10.Enabled = true;
        }
        private bool checkInput2(String str)
        {
            tbMemberSex.Text = tbMemberSex.Text.Trim();
            tbMemberName.Text = tbMemberName.Text.Trim();
            tbMemberTel.Text = tbMemberTel.Text.Trim();
            tbRelation.Text = tbRelation.Text.Trim();

            if (str == "Insert" || str == "Modify")
            {//以下是在更新或插入时检查输入是否为空
                if (tbMemberSex.Text == "") return ErrorMessage("家庭成员姓名为空");
                if (tbMemberName.Text == "") return ErrorMessage("性别为空");
                if (tbMemberTel.Text == "") return ErrorMessage("电话为空");
                if (tbRelation.Text == "") return ErrorMessage("家庭关系为空");
            }

            //下面为检查输入数字的TextBox和ComboBox的输入格式是否正确
            if (tbMemberSex.Text != "" && tbMemberSex.Text != "男" && tbMemberSex.Text != "女") return ErrorMessage("性别输入错误");
            //当此函数由查询按钮调用时,某些控件可能为空字符串,因此在转化前加了一个判断
            try{
                if (tbMemberTel.Text != "") Int64.Parse(tbMemberTel.Text);    //
            }catch{
                return ErrorMessage("电话输入错误");
            }

            return true;
        }
        private String generateSelectCommand2()
        {
            String cmd = "Select 住户编号,家庭成员姓名,性别,家庭关系,移动电话 from 家庭成员信息 ";
            bool cmdChanged = false;

            if (tbMemberName.Text != "")
            {
                if (cmdChanged)
                    cmd = cmd + " and 家庭成员姓名='" + tbMemberName.Text + "'";
                else
                {
                    cmd = cmd + " where 家庭成员姓名='" + tbMemberName.Text + "'";
                    cmdChanged = true;
                }
            }
            if (tbMemberSex.Text != "")
            {
                if (cmdChanged)
                    cmd = cmd + " and 性别='" + tbMemberSex.Text + "'";
                else
                {
                    cmd = cmd + " where 性别='" + tbMemberSex.Text + "'";
                    cmdChanged = true;
                }
            }
            if (tbMemberTel.Text != "")
            {
                if (cmdChanged)
                    cmd = cmd + " and 移动电话='" + tbMemberTel.Text + "'";
                else
                {
                    cmd = cmd + " where 移动电话='" + tbMemberTel.Text + "'";
                    cmdChanged = true;
                }
            }
            if (tbRelation.Text != "")
            {
                if (cmdChanged)
                    cmd = cmd + " and 家庭关系='" + tbRelation.Text + "'";
                else
                {
                    cmd = cmd + " where 家庭关系='" + tbRelation.Text + "'";
                    cmdChanged = true;
                }
            }
            return cmd;
        }
        private String generateUpdateCommand2()
        {
            String cmd = "";

            cmd = String.Format("update 家庭成员信息 set 家庭成员姓名='{0}',性别='{1}',家庭关系='{2}',移动电话='{3}'", tbOwnerName.Text, tbMemberSex.Text, tbRelation.Text, tbOwnerTel.Text);
            cmd = cmd + String.Format(" where 住户编号='{0}'", ID2);
            return cmd;
        }
        private String generateDeleteCommand2()
        {
            String cmd = String.Format("Delete from 家庭成员信息 where 住户编号='{0}'", dataGridView2.Rows[selectedIndex2].Cells["住户编号"].Value);
            return cmd;
        }
        private String generateInsertCommand2(Int64 id)
        {
            String cmd = "insert into 家庭成员信息 values(";

            insertID2 = id;
            cmd = cmd + String.Format("'{0}','','{1}','{2}','{3}','','','','4','')", id,tbMemberName.Text,tbMemberSex.Text,tbRelation.Text,tbMemberTel.Text);
            //MessageBox.Show(cmd);
            return cmd;
        }

        private void button10_Click(object sender, EventArgs e)
        {
            Int64 id=(Int64)dataGridView2.Rows[selectedIndex2].Cells["住户编号"].Value;
            searchTenementInfo(id);
        }

        private void button5_Click(object sender, EventArgs e)
        {
            Int64 id=(Int64)dataGridView.Rows[selectedIndex].Cells["住户编号"].Value;
            searchMemberInfo(id);
        }

        private void TenementPanel_Load(object sender, EventArgs e)
        {

        }

        private void tbOwnerName_TextChanged(object sender, EventArgs e)
        {

        }

        private void label10_Click(object sender, EventArgs e)
        {

        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -