DataGrid.GetCellBounds Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene l'oggetto Rectangle che specifica i quattro angoli di una cella.
Overload
| Nome | Descrizione |
|---|---|
| GetCellBounds(Int32, Int32) |
Ottiene l'oggetto della cella specificata in base al Rectangle numero di riga e colonna. |
| GetCellBounds(DataGridCell) |
Ottiene l'oggetto Rectangle della cella specificata da DataGridCell. |
GetCellBounds(Int32, Int32)
- Origine:
- DataGrid.cs
- Origine:
- DataGrid.cs
Ottiene l'oggetto della cella specificata in base al Rectangle numero di riga e colonna.
public:
System::Drawing::Rectangle GetCellBounds(int row, int col);
public System.Drawing.Rectangle GetCellBounds(int row, int col);
member this.GetCellBounds : int * int -> System.Drawing.Rectangle
Public Function GetCellBounds (row As Integer, col As Integer) As Rectangle
Parametri
- row
- Int32
Numero della riga della cella.
- col
- Int32
Numero della colonna della cella.
Valori restituiti
Oggetto Rectangle che definisce gli angoli della cella corrente.
Esempio
Nell'esempio di codice seguente viene utilizzato il GetCellBounds metodo per restituire una Rectangle di una cella specificata.
private:
void dataGrid1_MouseDown( Object^ sender, MouseEventArgs^ e )
{
// Use the HitTest method to get a HitTestInfo object.
System::Windows::Forms::DataGrid::HitTestInfo^ hi;
DataGrid^ grid = dynamic_cast<DataGrid^>(sender);
hi = grid->HitTest( e->X, e->Y );
// Test if the clicked area was a cell.
if ( hi->Type == DataGrid::HitTestType::Cell )
{
// If it's a cell, get the GridTable and CurrencyManager of the
// clicked table.
DataGridTableStyle^ dgt = dataGrid1->TableStyles[ 0 ];
CurrencyManager^ myCurrencyManager = dynamic_cast<CurrencyManager^>(BindingContext[ myDataSet->Tables[ dataGrid1->DataMember ] ]);
// Get the Rectangle of the clicked cell.
Rectangle cellRect;
cellRect = grid->GetCellBounds( hi->Row, hi->Column );
// Get the clicked DataGridTextBoxColumn.
DataGridTextBoxColumn^ gridCol = dynamic_cast<DataGridTextBoxColumn^>(dgt->GridColumnStyles[ hi->Column ]);
// Insert code to edit the value.
}
}
private void dataGrid1_MouseDown(object sender, MouseEventArgs e){
// Use the HitTest method to get a HitTestInfo object.
System.Windows.Forms.DataGrid.HitTestInfo hi;
DataGrid grid = (DataGrid) sender;
hi=grid.HitTest(e.X, e.Y);
// Test if the clicked area was a cell.
if(hi.Type==DataGrid.HitTestType.Cell ) {
// If it's a cell, get the GridTable and CurrencyManager of the
// clicked table.
DataGridTableStyle dgt = dataGrid1.TableStyles[0];
CurrencyManager myCurrencyManager =
(CurrencyManager)this.BindingContext
[myDataSet.Tables[dataGrid1.DataMember]];
// Get the Rectangle of the clicked cell.
Rectangle cellRect;
cellRect=grid.GetCellBounds(hi.Row, hi.Column);
// Get the clicked DataGridTextBoxColumn.
DataGridTextBoxColumn gridCol =
(DataGridTextBoxColumn) dgt.GridColumnStyles[hi.Column];
// Insert code to edit the value.
}
}
Private Sub dataGrid1_MouseDown _
(ByVal sender As Object, ByVal e As MouseEventArgs)
' Use the HitTest method to get a HitTestInfo object.
Dim hi As System.Windows.Forms.DataGrid.HitTestInfo
Dim grid As DataGrid = CType(sender, DataGrid)
hi = grid.HitTest(e.X, e.Y)
' Test if the clicked area was a cell.
If hi.Type = DataGrid.HitTestType.Cell Then
' If it's a cell, get the GridTable and CurrencyManager of the
' clicked table.
Dim dgt As DataGridTableStyle = dataGrid1.TableStyles(0)
Dim myCurrencyManager As CurrencyManager = _
CType(Me.BindingContext _
(myDataSet.Tables(dataGrid1.DataMember)), CurrencyManager)
' Get the Rectangle of the clicked cell.
Dim cellRect As Rectangle
cellRect = grid.GetCellBounds(hi.Row, hi.Column)
' Get the clicked DataGridTextBoxColumn.
Dim gridCol As DataGridTextBoxColumn = _
CType(dgt.GridColumnStyles(hi.Column), DataGridTextBoxColumn)
' Insert code to dit the value.
End If
End Sub
Commenti
Per recuperare i limiti di cella per la cella attualmente selezionata, utilizzare GetCurrentCellBounds.
Vedi anche
Si applica a
GetCellBounds(DataGridCell)
- Origine:
- DataGrid.cs
- Origine:
- DataGrid.cs
Ottiene l'oggetto Rectangle della cella specificata da DataGridCell.
public:
System::Drawing::Rectangle GetCellBounds(System::Windows::Forms::DataGridCell dgc);
public System.Drawing.Rectangle GetCellBounds(System.Windows.Forms.DataGridCell dgc);
member this.GetCellBounds : System.Windows.Forms.DataGridCell -> System.Drawing.Rectangle
Public Function GetCellBounds (dgc As DataGridCell) As Rectangle
Parametri
- dgc
- DataGridCell
Oggetto DataGridCell da cercare.
Valori restituiti
Oggetto Rectangle che definisce gli angoli della cella corrente.
Esempio
Nell'esempio di codice seguente viene utilizzato il GetCellBounds metodo per restituire una Rectangle di una cella specificata.
protected:
DataGridCell dgc;
void GetRect()
{
Rectangle rect;
dgc.ColumnNumber = 0;
dgc.RowNumber = 0;
rect = dataGrid1->GetCellBounds( dgc );
Console::WriteLine( rect );
}
protected DataGridCell dgc;
protected void GetRect(){
Rectangle rect;
dgc.ColumnNumber = 0;
dgc.RowNumber = 0;
rect = dataGrid1.GetCellBounds(dgc);
Console.WriteLine(rect.ToString());
}
Private Sub GetRect()
Dim rect As Rectangle
Dim dgc As DataGridCell
dgc.ColumnNumber = 0
dgc.RowNumber = 0
rect = DataGrid1.GetCellBounds(dgc)
Console.WriteLine(rect.ToString())
End Sub