DataGridViewCellValueEventArgs.RowIndex Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar ett värde som anger radindexet för cellen som händelsen inträffar för.
public:
property int RowIndex { int get(); };
public int RowIndex { get; }
member this.RowIndex : int
Public ReadOnly Property RowIndex As Integer
Egenskapsvärde
Indexet för raden som innehåller cellen som händelsen inträffar för.
Exempel
I följande kodexempel hanteras CellValuePushed händelsen för att lagra uppdateringar och nya poster i ett datalagerobjekt. Det här exemplet är en del av ett större exempel som är tillgängligt i referensavsnittet DataGridView.VirtualMode .
#pragma region Data store maintance
void VirtualConnector::dataGridView1_CellValueNeeded
(Object^ sender, DataGridViewCellValueEventArgs^ e)
{
if (store->ContainsKey(e->RowIndex))
{
// Use the store if the e value has been modified
// and stored.
e->Value = gcnew Int32(store->default[e->RowIndex]);
}
else if (newRowNeeded && e->RowIndex == numberOfRows)
{
if (dataGridView1->IsCurrentCellInEditMode)
{
e->Value = initialValue;
}
else
{
// Show a blank e if the cursor is just loitering
// over(the) last row.
e->Value = String::Empty;
}
}
else
{
e->Value = e->RowIndex;
}
}
void VirtualConnector::dataGridView1_CellValuePushed
(Object^ sender, DataGridViewCellValueEventArgs^ e)
{
String^ value = e->Value->ToString();
store[e->RowIndex] = Int32::Parse(value,
CultureInfo::CurrentCulture);
}
#pragma endregion
#region "data store maintance"
const int initialValue = -1;
private void dataGridView1_CellValueNeeded(object sender,
DataGridViewCellValueEventArgs e)
{
if (store.ContainsKey(e.RowIndex))
{
// Use the store if the e value has been modified
// and stored.
e.Value = store[e.RowIndex];
}
else if (newRowNeeded && e.RowIndex == numberOfRows)
{
if (dataGridView1.IsCurrentCellInEditMode)
{
e.Value = initialValue;
}
else
{
// Show a blank value if the cursor is just resting
// on the last row.
e.Value = String.Empty;
}
}
else
{
e.Value = e.RowIndex;
}
}
private void dataGridView1_CellValuePushed(object sender,
DataGridViewCellValueEventArgs e)
{
store.Add(e.RowIndex, int.Parse(e.Value.ToString()));
}
#endregion
private Dictionary<int, int> store = new Dictionary<int, int>();
#Region "data store maintance"
Const initialValue As Integer = -1
Private Sub dataGridView1_CellValueNeeded(ByVal sender As Object, _
ByVal e As DataGridViewCellValueEventArgs) _
Handles dataGridView1.CellValueNeeded
If store.ContainsKey(e.RowIndex) Then
' Use the store if the e value has been modified
' and stored.
e.Value = store(e.RowIndex)
ElseIf newRowNeeded AndAlso e.RowIndex = numberOfRows Then
If dataGridView1.IsCurrentCellInEditMode Then
e.Value = initialValue
Else
' Show a blank value if the cursor is just resting
' on the last row.
e.Value = String.Empty
End If
Else
e.Value = e.RowIndex
End If
End Sub
Private Sub dataGridView1_CellValuePushed(ByVal sender As Object, _
ByVal e As DataGridViewCellValueEventArgs) _
Handles dataGridView1.CellValuePushed
store.Add(e.RowIndex, CInt(e.Value))
End Sub
#End Region
Dim store As System.Collections.Generic.Dictionary(Of Integer, Integer) = _
New Dictionary(Of Integer, Integer)
Kommentarer
Använd den här förskjutningen med Rows egenskapen för att referera till cellen som händelsen inträffar för.