hey , i got it! i dont know much but it works perfect this way: private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e) { dataGridView1.CurrentCell = DataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex]; this.dataGridView1.ContextMenuStrip = this.contextMenuStrip1; } works only on this event ... and yes the contextStrip shows up when i right click . not when i left click thanks so much for your concern!:):) but i got another problem now.. .basically.. .the datagrid on my form shoud display the status of ALL the rooms... for a given date(i have a datepicker on the form) .. ok so now in my test app. when i hit 8th on the datepicker , the DGV shows one entry .. room 103A is booked on that date. Problem is , it only shows one entry .. i want the empty rooms to show up as empty rows. I know i have to add unbound data. I tried to add blank rows. but its says i cannot add anythign programmatically if i have it bound. If its unbound this is how i add the rows .. DataRow dt = dataSet.Tables["customers"].Rows[0]; dataGridView2.Rows.Add(dt[0] , dt[1] , dt[2] ....... ); is the above correct or is there a better way...?? also if i add the blank rows .. and the user adds something in it what event do i have to handle? and how do i update/add the DB manually? :confused:i know SQL .. i'm using oledb . for an access database (.mdb) now one of the colums inthe database is roomtype. but then when i load the values i want them in a combobox? how do i do that? how do i adda combobox to the DVG?:sigh: DataGridViewComboBoxColumn cboColumn = new DataGridViewComboBoxColumn(); cboColumn.Items.Add("a"); cboColumn.Items.Add("b"); dataGridView2.Rows.Add("", cboColumn, ""); i get -> DataGridViewComboBoxColumn { Name=, Index=-1 } in the second column!:doh: :doh: plz help!:sigh: