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

📄 ucvtm.cs

📁 以构建的方式来实现对通用的查询统计
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace dist.hb.EnvQueryStat.Manage
{
	public partial class ucVTM : UserControl
	{
		public ucVTM()
		{
			InitializeComponent();
		}
		System.Data.OleDb.OleDbDataAdapter m_currentDbDataAdapter;
		System.Data.DataSet m_currentDataSet;
		string m_strTbl = "FS_VTable";
		private OleDbConnection m_OleDbConn;

		public OleDbConnection OleDbConn
		{
			get { return m_OleDbConn; }
			set
			{
				if (value == null) return;
				if (value == m_OleDbConn) return;
				m_OleDbConn = value;
			}
		}

		private void gridView1_InitNewRow(object sender, DevExpress.XtraGrid.Views.Grid.InitNewRowEventArgs e)
		{
			DataRow row = gridView1.GetDataRow(e.RowHandle);
			row["VTID"] = GetMaxVTID();

		}

		//取最大值
		private int GetMaxVTID()
		{
			DataTable tbl;
			tbl = m_currentDataSet.Tables[m_strTbl];
			if (tbl == null) return 0;
			string strTemp = tbl.Compute("MAX(VTID)", "").ToString();
			if(strTemp == "") return 1;
			else return 1 + Convert.ToInt32(strTemp);
		}

		private void BindTbl()
		{
			DataSet ds = new DataSet();
			string strSQL;
			strSQL = "SELECT VTID,VTName,VName,remark FROM " + m_strTbl;
			m_currentDbDataAdapter = new System.Data.OleDb.OleDbDataAdapter(strSQL, m_OleDbConn);

			OleDbCommandBuilder custCB = new OleDbCommandBuilder(m_currentDbDataAdapter);
			OleDbCommand cmd = new OleDbCommand();

			cmd.Connection = m_OleDbConn;
			//cmd.Transaction = m_tran;
			cmd.CommandType = CommandType.Text;
			cmd.CommandText = strSQL;
			m_currentDbDataAdapter.SelectCommand = cmd;

			m_currentDbDataAdapter.Fill(ds, m_strTbl);
			gridControl1.DataSource = null;
			gridControl1.DataSource = ds.Tables[m_strTbl];
			m_currentDataSet = null;
			m_currentDataSet = ds;
		}

		private void ucVTM_Load(object sender, EventArgs e)
		{
			BindTbl();
		}

    private void gridView1_RowUpdated(object sender, DevExpress.XtraGrid.Views.Base.RowObjectEventArgs e)
    {
      System.Data.DataRowView dv = (DataRowView)e.Row;
      if (dv == null) return;
      DataRow[] rows = new DataRow[]{dv.Row};
      m_currentDbDataAdapter.Update(rows);
     
      //MessageBox.Show("测试", "提示");
    }

    private void gridControl1_Click(object sender, EventArgs e)
    {

    }

    private void gridView1_DataSourceChanged(object sender, EventArgs e)
    {
      //MessageBox.Show("测试", "提示");
    }

    private void gridControl1_EmbeddedNavigator_ButtonClick(object sender, DevExpress.XtraEditors.NavigatorButtonClickEventArgs e)
    {
      //MessageBox.Show("测试", "提示");
      if (e.Button.ButtonType.ToString() != "Remove") return;
      DevExpress.XtraGrid.GridControlNavigator Nav = (DevExpress.XtraGrid.GridControlNavigator)sender;
      int iPos = Nav.NavigatableControl.Position;
      if (iPos < 0) return;
      DataTable db =  m_currentDataSet.Tables[m_strTbl];
      iPos = (int)db.Rows[iPos].ItemArray[0];
      DeleteVTB(iPos);
    }

    private void DeleteVTB(long nVTBid)
    {
      string strSQL;
      strSQL = "DELETE  FROM " + m_strTbl + " WHERE VTID =" + nVTBid.ToString() ;
      OleDbCommand command = new OleDbCommand(strSQL, m_OleDbConn);
      command.ExecuteNonQuery();
      command.Dispose();
    }

	}
}

⌨️ 快捷键说明

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