注意:ここで紹介しているDataGridは、System.Windows.Forms名前空間のDataGrid(Windowsフォーム)です。System.Web.UI.WebControls名前空間のDataGrid(Webフォーム)ではありません。
現在選択されているセルのTextBoxオブジェクトを取得し、これから選択された文字列を得ることを考えます。次の例ではDataGrid1(DataGridオブジェクト)にDataTable1(DataTableオブジェクト、TableName="DataTable1")が連結されており、テーブルスタイルの設定はすでにされているものとします。(テーブルスタイルの説明は省かれています。分からないという方はこちらをご覧ください。)
なお、テキストボックスで選択されている文字列を取得する方法に関してはこちらを参考にしてください。
'テーブルスタイルの取得 Dim ts As DataGridTableStyle ts = DataGrid1.TableStyles("DataTable1") '選択されている列の取得 Dim cn As Integer = DataGrid1.CurrentCell.ColumnNumber 'DataGridTextBoxColumnの取得 Dim cs As DataGridTextBoxColumn = _ CType(ts.GridColumnStyles(cn), DataGridTextBoxColumn) 'TextBoxの取得 Dim tb As TextBox = cs.TextBox '選択されている文字列の取得 Console.WriteLine(tb.SelectedText)
//テーブルスタイルの取得 DataGridTableStyle ts; ts = DataGrid1.TableStyles["DataTable1"]; //選択されている列の取得 int cn = DataGrid1.CurrentCell.ColumnNumber; //DataGridTextBoxColumnの取得 DataGridTextBoxColumn cs = (DataGridTextBoxColumn) ts.GridColumnStyles[cn]; //TextBoxの取得 TextBox tb = cs.TextBox; //選択されている文字列の取得 Console.WriteLine(tb.SelectedText);
注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。