private void ConnectionsGrid_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { var hti = ConnectionsGrid.HitTest(e.X, e.Y); ConnectionsGrid.ClearSelection(); ConnectionsGrid.Rows[hti.RowIndex].Selected = true; } }
private void BindData() { // get database name SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["AbleCommerce"].ConnectionString); string dbName = con.Database; // build query StringBuilder queryStr = new StringBuilder(); queryStr.Append("DECLARE @SPWHO2 TABLE (SPID VARCHAR(1000), [Status] VARCHAR(1000) NULL, [Login] VARCHAR(1000) NULL"); queryStr.Append(", HostName VARCHAR(1000) NULL, BlkBy VARCHAR(1000) NULL, DBName VARCHAR(1000) NULL, Command VARCHAR(1000) NULL"); queryStr.Append(", CPUTime VARCHAR(1000) NULL, DiskIO VARCHAR(1000) NULL, LastBatch VARCHAR(1000) NULL, ProgramName VARCHAR(1000) NULL"); queryStr.Append(", SPID2 VARCHAR(1000) NULL, Request VARCHAR(1000) NULL) "); queryStr.Append("INSERT INTO @SPWHO2 EXEC sp_who2"); if (ActiveOnly.Checked) { queryStr.Append(" 'Active' "); } queryStr.Append(" SELECT * FROM @SPWHO2 WHERE DBName = :dbName"); var nhQuery = NHibernateHelper.CreateSQLQuery(queryStr.ToString()) .SetString("dbName", dbName); // execute query var results = nhQuery.List(); // parse results IList <RptData> finalData = new List <RptData>(); foreach (object[] resultRow in results) { RptData row = new RptData(); row.Spid = (string)resultRow[0]; row.Status = (string)resultRow[1]; row.Login = (string)resultRow[2]; row.HostName = (string)resultRow[3]; row.BlkBy = (string)resultRow[4]; row.DbName = (string)resultRow[5]; row.Command = (string)resultRow[6]; row.CPUTime = (string)resultRow[7]; row.DiskIO = (string)resultRow[8]; row.LastBatch = (string)resultRow[9]; row.ProgramName = (string)resultRow[10]; row.SPID2 = (string)resultRow[11]; row.Request = (string)resultRow[12]; finalData.Add(row); } ConnectionsGrid.DataSource = finalData; ConnectionsGrid.DataBind(); // summarize data ConnectionsCount.Text = finalData.Count.ToString(); if (Session["LastCount"] != null) { int lastCount = AlwaysConvert.ToInt(Session["LastCount"], 0); int diff = finalData.Count - lastCount; Changed.Text = diff.ToString(); } else { Changed.Text = "n/a"; } Session["LastCount"] = finalData.Count.ToString(); }