DataGrid.GetCellBounds Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das Rectangle ab, das die vier Ecken einer Zelle angibt.
Überlädt
GetCellBounds(Int32, Int32) |
Ruft das Rectangle der Zelle ab, die durch Zeilen- und Spaltennummer angegeben ist. |
GetCellBounds(DataGridCell) |
Ruft das Rectangle der von DataGridCell angegebenen Zelle ab. |
GetCellBounds(Int32, Int32)
Ruft das Rectangle der Zelle ab, die durch Zeilen- und Spaltennummer angegeben ist.
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
Parameter
- row
- Int32
Die Zeilennummer der Zelle.
- col
- Int32
Die Spaltennummer der Zelle.
Gibt zurück
Ein Rectangle, das die Ecken der aktuellen Zelle bestimmt.
Beispiele
Im folgenden Codebeispiel wird die GetCellBounds -Methode verwendet, um eine Rectangle der angegebenen Zelle zurückzugeben.
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
Hinweise
Verwenden Sie GetCurrentCellBounds, um die Zellgrenzen für die aktuell ausgewählte Zelle abzurufen.
Weitere Informationen
Gilt für:
GetCellBounds(DataGridCell)
Ruft das Rectangle der von DataGridCell angegebenen Zelle ab.
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
Parameter
- dgc
- DataGridCell
Die zu suchende DataGridCell.
Gibt zurück
Ein Rectangle, das die Ecken der aktuellen Zelle bestimmt.
Beispiele
Im folgenden Codebeispiel wird die GetCellBounds -Methode verwendet, um eine Rectangle der angegebenen Zelle zurückzugeben.
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