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

📄 fmeditbaseform.cs

📁 一个通讯录源码,用C#写的.挺不错的,大家可以参考看一下.
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace AddressList.Forms
{
    public partial class fmEditBaseForm : fmBaseForm
    {
        protected fmEditBaseForm()
        {
            InitializeComponent();
        }

        private const string SError = "错误";

        /// <summary>
        /// 单据状态
        /// </summary>
        private BillStates billState;
        private int keyValue = 0;

        public BillStates BillState
        {
            get
            {
                return this.billState;
            }
            set
            {
                this.billState = value;
            }
        }        

        protected int IntegerID
        {
            get
            {
                return keyValue;
            }
        }

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="billState">打开窗体状态,新增、修改</param>
        /// <param name="intKey">主键</param>
        public fmEditBaseForm(BillStates billState, int intKey)
        {
            InitializeComponent();
            keyValue = intKey;
            this.billState = billState;
        }

        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
            switch (billState)
            {
                case BillStates.bsNew:
                    {
                        this.Text += " 新增";
                        LoadData(-1);
                        InitDataValue();
                        break;
                    }
                case BillStates.bsEdit:
                case BillStates.bsView:
                    {
                        this.Text += " 修改";
                        LoadData(keyValue);
                        break;
                    }
            }
        }

        /// <summary>
        ///  保存数据
        /// </summary>
        /// <param name="afterSaveCloseForm">保存成功后,关闭窗体</param>   
        protected virtual void DoSave(bool afterSaveCloseForm)
        {
            //Connection.BeginTransaction();
            try
            {
                if (!BeforeSave()) return;
                Saveing();
                AfterSave();
            }
            catch (Exception E)
            {
                //Connection.
                throw new Exception(E.ToString());
            }
            finally
            {
                //
            }
            if (afterSaveCloseForm) this.DialogResult = DialogResult.OK;
        }

        protected virtual bool BeforeSave()
        {
            return true;
        }

        protected virtual void Saveing()
        {

        }

        protected virtual void AfterSave()
        {

        }

        /// <summary>
        /// 新增初始化数据
        /// </summary>
        protected virtual void InitDataValue()
        {

        }

        /// <summary>
        /// 修改时装入备要数据
        /// </summary>
        /// <param name="intKey">主键值</param>
        protected virtual void LoadData(int intKey)
        {

        }

    }

    /// <summary>
    /// 单据状态
    /// </summary>
    public enum BillStates {bsNew, bsEdit, bsView};
}

⌨️ 快捷键说明

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