DataGrid.GetCellBounds Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Rectangle Získá ten, který určuje čtyři rohy buňky.
Přetížení
GetCellBounds(Int32, Int32) |
Rectangle Získá buňku určenou číslem řádku a sloupce. |
GetCellBounds(DataGridCell) |
Rectangle Získá buňku určenou .DataGridCell |
GetCellBounds(Int32, Int32)
Rectangle Získá buňku určenou číslem řádku a sloupce.
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
Parametry
- row
- Int32
Číslo řádku buňky.
- col
- Int32
Číslo sloupce buňky.
Návraty
A Rectangle , která definuje rohy aktuální buňky.
Příklady
Následující příklad kódu používá metodu GetCellBounds k vrácení Rectangle zadané buňky.
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
Poznámky
Chcete-li načíst hranice buňky pro aktuálně vybranou buňku, použijte GetCurrentCellBounds.
Viz také
Platí pro
GetCellBounds(DataGridCell)
Rectangle Získá buňku určenou .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
Parametry
- dgc
- DataGridCell
Na DataGridCell to, aby se podíval.
Návraty
A Rectangle , která definuje rohy aktuální buňky.
Příklady
Následující příklad kódu používá metodu GetCellBounds k vrácení Rectangle zadané buňky.
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