DataGridColumnStyle::Edit Method (CurrencyManager^, Int32, Rectangle, Boolean, String^)
.NET Framework (current version)
Prepares the cell for editing using the specified CurrencyManager, row number, and Rectangle parameters.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
public protected: virtual void Edit( CurrencyManager^ source, int rowNum, Rectangle bounds, bool readOnly, String^ displayText )
Parameters
- source
-
Type:
System.Windows.Forms::CurrencyManager^
The CurrencyManager for the DataGridColumnStyle.
- rowNum
-
Type:
System::Int32
The row number in this column which is being edited.
- bounds
-
Type:
System.Drawing::Rectangle
The Rectangle in which the control is to be sited.
- readOnly
-
Type:
System::Boolean
A value indicating whether the column is a read-only. true if the value is read-only; otherwise, false.
- displayText
-
Type:
System::String^
The text to display in the control.
Typically, the Edit method sites a control onto the grid at the location of the cell being edited.
The following code example uses the Edit method to change the text of a clicked cell in the System.Windows.Forms::DataGrid control.
public ref class Form1: public Form { private: DataSet^ myDataSet; 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 = grid->TableStyles[ 0 ]; CurrencyManager^ myCurrencyManager = dynamic_cast<CurrencyManager^>(this->BindingContext[ myDataSet->Tables[ dgt->MappingName ] ]); // Get the Rectangle of the clicked cell. Rectangle cellRect; cellRect = grid->GetCellBounds( hi->Row, hi->Column ); // Get the clicked DataGridTextBoxColumn. MyColumnStyle ^ gridCol = dynamic_cast<MyColumnStyle^>(dgt->GridColumnStyles[ hi->Column ]); // Edit the value. gridCol->EditVal( myCurrencyManager, hi->Row, cellRect, false, "New Text" ); } } public: ref class MyColumnStyle: public DataGridTextBoxColumn { public: void EditVal( CurrencyManager^ cm, int row, Rectangle rec, bool readOnly, String^ text ) { this->Edit( cm, row, rec, readOnly, text ); } }; };
.NET Framework
Available since 1.1
Available since 1.1
Show: