มันง่ายมาก ฉันจะรับดัชนีRow
ของ a ที่เลือกในปัจจุบันได้DataGridView
อย่างไร ฉันไม่ต้องการRow
วัตถุฉันต้องการดัชนี (0 .. n)
มันง่ายมาก ฉันจะรับดัชนีRow
ของ a ที่เลือกในปัจจุบันได้DataGridView
อย่างไร ฉันไม่ต้องการRow
วัตถุฉันต้องการดัชนี (0 .. n)
คำตอบ:
มีRowIndex
คุณสมบัติสำหรับCurrentCell
คุณสมบัติสำหรับ DataGridView
datagridview.CurrentCell.RowIndex
จัดการSelectionChanged
เหตุการณ์และค้นหาดัชนีของแถวที่เลือกตามด้านบน
CurrentCell
ส่งคืนเซลล์ "ใช้งานอยู่" ซึ่งแตกต่างจาก "ที่เลือก" แม้ว่าจะมีการเลือกหลายแถวเซลล์ที่ใช้งานอยู่อาจอยู่ที่อื่นและอาจมีเซลล์ที่ใช้งานได้เพียงเซลล์
ใช้คุณสมบัติดัชนีในคอลเลกชัน SelectedRows ของ DGV ของคุณ:
int index = yourDGV.SelectedRows[0].Index;
if
dataGridView1.SelectedRows[0].Index;
หรือหากคุณต้องการใช้ LINQ และรับดัชนีของแถวที่เลือกทั้งหมดคุณสามารถทำได้:
dataGridView1.SelectedRows.Select(r => r.Index);
dataGridView1.SelectedRows[0].Index;
ค้นหาข้อมูลเกี่ยวกับการสอน datagridview C # datagridview ได้ที่นี่
Lynda
ลองใช้มันจะได้ผล ... มันจะให้ดัชนีของดัชนีแถวที่เลือก ...
int rowindex = dataGridView1.CurrentRow.Index;
MessageBox.Show(rowindex.ToString());
ลองดู
bool flag = dg1.CurrentRow.Selected;
if(flag)
{
/// datagridview row is selected in datagridview rowselect selection mode
}
else
{
/// no row is selected or last empty row is selected
}
ฉันแก้ไขคำตอบของ @JayRiggs และได้ผล คุณต้องใช้if
เนื่องจากบางครั้ง SelectedRows อาจว่างเปล่าดังนั้นการดำเนินการดัชนีจะทำให้เกิดข้อยกเว้น
if (yourDGV.SelectedRows.Count>0){
int index = yourDGV.SelectedRows[0].Index;
}
DataGridView.CurrentCellAddress.Y
... :)
ลองมัน:
int rc=dgvDataRc.CurrentCell.RowIndex;** //for find the row index number
MessageBox.Show("Current Row Index is = " + rc.ToString());
ฉันหวังว่ามันจะช่วยคุณได้
datagridview.CurrentCell.RowIndex
ที่เลือกซึ่งทำให้การแก้ปัญหา ขออภัย - ฉันจะแนะนำให้ลบโพสต์นี้เนื่องจากเป็นรายการที่ซ้ำกัน
คุณสามารถลองใช้รหัสนี้:
int columnIndex = dataGridView.CurrentCell.ColumnIndex;
int rowIndex = dataGridView.CurrentCell.RowIndex;
ฉันใช้ถ้าได้รับค่าแถวถูกคลิก:
private void dataGridView_Product_CellClick(object sender, DataGridViewCellEventArgs e){
int rowIndex;
//rowIndex = e.RowIndex; //Option 1
//rowIndex= dataGridView_Product.CurrentCell.RowIndex; //Option 2
rowIndex = dataGridView_Product.CurrentRow.Index; //Option 3
}
ลองทำดังต่อไปนี้:
int myIndex = MyDataGrid.SelectedIndex;
สิ่งนี้จะให้ดัชนีของแถวที่เลือกไว้ในปัจจุบัน
หวังว่านี่จะช่วยได้