次の方法で共有


DataGridTextBoxColumn.Edit メソッド

オーバーロードの一覧

このメンバは、.NET Framework インフラストラクチャのサポートを目的としています。独自に作成したコード内で直接使用することはできません。

[Visual Basic] Overloads Protected Friend Overrides Sub Edit(CurrencyManager, Integer, Rectangle, Boolean, String, Boolean)

[C#] protected internal override void Edit(CurrencyManager, int, Rectangle, bool, string, bool);

[C++] protected public: void Edit(CurrencyManager*, int, Rectangle, bool, String*, bool);

[JScript] protected internal override function Edit(CurrencyManager, int, Rectangle, Boolean, String, Boolean);

DataGridColumnStyle から継承されます。

[Visual Basic] Overloads Protected Friend Overridable Sub Edit(CurrencyManager, Integer, Rectangle, Boolean)

[C#] protected internal virtual void Edit(CurrencyManager, int, Rectangle, bool);

[C++] protected public: virtual void Edit(CurrencyManager*, int, Rectangle, bool);

[JScript] protected internal function Edit(CurrencyManager, int, Rectangle, Boolean);

DataGridColumnStyle から継承されます。

[Visual Basic] Overloads Protected Friend Overridable Sub Edit(CurrencyManager, Integer, Rectangle, Boolean, String)

[C#] protected internal virtual void Edit(CurrencyManager, int, Rectangle, bool, string);

[C++] protected public: virtual void Edit(CurrencyManager*, int, Rectangle, bool, String*);

[JScript] protected internal function Edit(CurrencyManager, int, Rectangle, Boolean, String);

使用例

[Visual Basic, C#, C++] The following example uses the Edit method to change the text of a clicked cell in the DataGrid control.

[Visual Basic, C#, C++] メモ   ここでは、Edit のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。

 
Public Class Form1
   Inherits Form
   Protected dataGrid1 As DataGrid
   Protected myDataSet As DataSet
    
   
   Protected Sub dataGrid1_MouseDown(sender As Object, e As MouseEventArgs)
      ' Use the HitTest method to get a HitTestInfo object.
      Dim hi As 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 cm As CurrencyManager = CType _
         (Me.BindingContext(myDataSet.Tables(dgt.MappingName)), _
         CurrencyManager)
         ' Get the Rectangle of the clicked cell.
         Dim cellRect As Rectangle = _
         grid.GetCellBounds(hi.Row, hi.Column)
         ' Get the clicked DataGridTextBoxColumn.
         Dim gridCol As MyGridColumn = CType _
         (dgt.GridColumnStyles(hi.Column), MyGridColumn)
         ' Edit the value.
         gridCol.EditCol(cm, hi.Row, cellRect, False, "New Text", True)
      End If
   End Sub   
End Class 

Public Class MyGridColumn
Inherits DataGridTextBoxColumn
   Public Sub EditCol(cm As CurrencyManager , rowNum As integer , _
   cellRect As Rectangle , bReadOnly As Boolean , _
   myString As String , isVisible As Boolean )
      me.Edit(cm, rowNum, cellRect, bReadOnly, myString, isVisible)
   End Sub
End Class


[C#] 
public class Form1: Form
{
protected DataGrid dataGrid1;
protected DataSet myDataSet;

protected void dataGrid1_MouseDown(object sender, MouseEventArgs e)
{
    // Use the HitTest method to get a HitTestInfo object.
    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 cm = (CurrencyManager)
           this.BindingContext[myDataSet.Tables[dgt.MappingName]];
       // Get the Rectangle of the clicked cell.
       Rectangle cellRect = grid.GetCellBounds(hi.Row, hi.Column);
       // Get the clicked DataGridTextBoxColumn.
       MyGridColumn gridCol =
       (MyGridColumn)dgt.GridColumnStyles[hi.Column];
       // Edit the value.
       gridCol.EditCol(cm, hi.Row, cellRect, false, "New Text", true);
    }
 }
}

public class MyGridColumn:DataGridTextBoxColumn{
   public void EditCol(CurrencyManager cm, int rowNum, 
      Rectangle cellRect, bool readOnly, 
      string myString, bool isVisible){
      this.Edit(cm, rowNum, cellRect, readOnly, myString, isVisible);
   }
}

[C++] 
public __gc class MyGridColumn: public DataGridTextBoxColumn{
public:
   void EditCol(CurrencyManager* cm, int rowNum, 
      Rectangle cellRect, bool readOnly, 
      String* myString, bool isVisible){
      this->Edit(cm, rowNum, cellRect, readOnly, myString, isVisible);
   }
};

public __gc class Form1: public Form
{
protected:
DataGrid* dataGrid1;
DataSet* myDataSet;

void dataGrid1_MouseDown(Object* sender, MouseEventArgs* e)
{
    // Use the HitTest method to get a HitTestInfo object.
    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->Item[0];     
       CurrencyManager* cm = dynamic_cast<CurrencyManager*>
          (this->BindingContext->Item[myDataSet->Tables->Item[dgt->MappingName]]);
       // Get the Rectangle of the clicked cell.
       Rectangle cellRect = grid->GetCellBounds(hi->Row, hi->Column);
       // Get the clicked DataGridTextBoxColumn.
       MyGridColumn* gridCol =
          dynamic_cast<MyGridColumn*>(dgt->GridColumnStyles->Item[hi->Column]);
       // Edit the value.
       gridCol->EditCol(cm, hi->Row, cellRect, false, S"New Text", true);
    }
 }
};

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

参照

DataGridTextBoxColumn クラス | DataGridTextBoxColumn メンバ | System.Windows.Forms 名前空間