DataGridView.SelectedCells プロパティ
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

Dim instance As DataGridView Dim value As DataGridViewSelectedCellCollection value = instance.SelectedCells
public: property DataGridViewSelectedCellCollection^ SelectedCells { DataGridViewSelectedCellCollection^ get (); }
ユーザーが選択したセルを表す DataGridViewSelectedCellCollection。

SelectionMode プロパティの値に関係なく、SelectedCells プロパティは常に作成されます。
このプロパティには、参照された時点の選択の読み取り専用スナップショットが格納されます。このコレクションのコピーを保持し続けた場合、ユーザーが選択を変更した実際の後続の DataGridView 状態とは異なる可能性があります。したがって、このコレクションのコピーは使用しないでください。

SelectedCells コレクションを使用して、選択項目の値の合計を調べるコード例を次に示します。この例では、このコレクションが反復処理され、有効な値が合計に追加されます。合計はラベルに表示されます。
Private Sub UpdateLabelText() Dim WithdrawalTotal As Integer = 0 Dim DepositTotal As Integer = 0 Dim SelectedCellTotal As Integer = 0 Dim counter As Integer ' Iterate through all the rows and sum up the appropriate columns. For counter = 0 To (DataGridView1.Rows.Count - 1) If Not DataGridView1.Rows(counter) _ .Cells("Withdrawals").Value Is Nothing Then If Not DataGridView1.Rows(counter) _ .Cells("Withdrawals").Value.ToString().Length = 0 Then WithdrawalTotal += _ Integer.Parse(DataGridView1.Rows(counter) _ .Cells("Withdrawals").Value.ToString()) End If End If If Not DataGridView1.Rows(counter) _ .Cells("Deposits").Value Is Nothing Then If Not DataGridView1.Rows(counter) _ .Cells("Deposits").Value.ToString().Length = 0 Then DepositTotal += _ Integer.Parse(DataGridView1.Rows(counter) _ .Cells("Deposits").Value.ToString()) End If End If Next ' Iterate through the SelectedCells collection and sum up the values. For counter = 0 To (DataGridView1.SelectedCells.Count - 1) If DataGridView1.SelectedCells(counter).FormattedValueType Is _ Type.GetType("System.String") Then Dim value As String = Nothing ' If the cell contains a value that has not been commited , ' use the modified value. If (DataGridView1.IsCurrentCellDirty = True) Then value = DataGridView1.SelectedCells(counter) _ .EditedFormattedValue.ToString() Else value = DataGridView1.SelectedCells(counter) _ .FormattedValue.ToString() End If If Not value Is Nothing Then ' Ignore cells in the Description column. If Not DataGridView1.SelectedCells(counter).ColumnIndex = _ DataGridView1.Columns("Description").Index Then If Not value.Length = 0 Then SelectedCellTotal += Integer.Parse(value) End If End If End If End If Next ' Set the labels to reflect the current state of the DataGridView. Label1.Text = "Withdrawals Total: " & WithdrawalTotal.ToString() Label2.Text = "Deposits Total: " & DepositTotal.ToString() Label3.Text = "Selected Cells Total: " & SelectedCellTotal.ToString() Label4.Text = "Total entries: " & DataGridView1.RowCount.ToString() End Sub
private void UpdateLabelText() { int WithdrawalTotal = 0; int DepositTotal = 0; int SelectedCellTotal = 0; int counter; // Iterate through all the rows and sum up the appropriate columns. for (counter = 0; counter < (DataGridView1.Rows.Count); counter++) { if (DataGridView1.Rows[counter].Cells["Withdrawals"].Value != null) { if (DataGridView1.Rows[counter]. Cells["Withdrawals"].Value.ToString().Length != 0) { WithdrawalTotal += int.Parse(DataGridView1.Rows[counter]. Cells["Withdrawals"].Value.ToString()); } } if (DataGridView1.Rows[counter].Cells["Deposits"].Value != null) { if (DataGridView1.Rows[counter] .Cells["Deposits"].Value.ToString().Length != 0) { DepositTotal += int.Parse(DataGridView1.Rows[counter] .Cells["Deposits"].Value.ToString()); } } } // Iterate through the SelectedCells collection and sum up the values. for (counter = 0; counter < (DataGridView1.SelectedCells.Count); counter++) { if (DataGridView1.SelectedCells[counter].FormattedValueType == Type.GetType("System.String")) { string value = null; // If the cell contains a value that has not been commited , // use the modified value. if (DataGridView1.IsCurrentCellDirty == true) { value = DataGridView1.SelectedCells[counter] .EditedFormattedValue.ToString(); } else { value = DataGridView1.SelectedCells[counter] .FormattedValue.ToString(); } if (value != null) { // Ignore cells in the Description column. if (DataGridView1.SelectedCells[counter].ColumnIndex != DataGridView1.Columns["Description"].Index) { if (value.Length != 0) { SelectedCellTotal += int.Parse(value); } } } } } // Set the labels to reflect the current state of the DataGridView. Label1.Text = "Withdrawals Total: " + WithdrawalTotal.ToString(); Label2.Text = "Deposits Total: " + DepositTotal.ToString(); Label3.Text = "Selected Cells Total: " + SelectedCellTotal.ToString(); Label4.Text = "Total entries: " + DataGridView1.RowCount.ToString(); }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DataGridView クラス
DataGridView メンバ
System.Windows.Forms 名前空間
その他の技術情報
DataGridView コントロール (Windows フォーム)
Weblioに収録されているすべての辞書からDataGridView.SelectedCells プロパティを検索する場合は、下記のリンクをクリックしてください。

- DataGridView.SelectedCells プロパティのページへのリンク