CWnd::GetWindowTextLength

CWnd::GetWindowTextLengthで、テキストの長さを取得する。

CWnd クラス | Microsoft Docs

エディットコントロールを追加
エディットコントロールを追加

エディットコントロールを追加。
CWndDlg.cppで、

こう書く。

"ABCDE"と入力して、Button1を押すと、
"ABCDE"と入力して、Button1を押すと、

"ABCDE"と入力して、Button1を押すと、

テキストの長さ"5"が出る。
テキストの長さ"5"が出る。

テキストの長さ"5"が出る。

Sample/mfc/CWnd/GetWindowTextLength/src/CWnd at master · bg1bgst333/Sample · GitHub

CWnd::GetDlgItem

CWnd::GetDlgItemで、指定のリソースIDの子ウィンドウ(コントロール)オブジェクトポインタを取得する。

CWnd クラス | Microsoft Docs

Win32API版で取得したウィンドウハンドルと、こちらで取得したポインタのウィンドウハンドルが同じかどうか調べる。

ボタンを配置したら、ハンドラを追加。
ボタンを配置したら、ハンドラを追加。

ボタンを配置したら、ハンドラを追加。

こうすると、ボタンを押したら、

これが出てきたので、同じハンドルだとわかる。
これが出てきたので、同じハンドルだとわかる。

これが出てきたので、同じハンドルだとわかる。

Sample/mfc/CWnd/GetDlgItem/src/CWnd at master · bg1bgst333/Sample · GitHub

SqlDataReader.Item[name]

SqlDataReaderオブジェクトの添字には、カラム名を指定することもできる。

SqlDataReader.Item[] プロパティ (System.Data.SqlClient) | Microsoft Docs

MainClass.csで、

reader["ID"]や、reader["Name"]というようにカラム名を指定する。

この方法でも、TestTable0の中身を出力できる。
この方法でも、TestTable0の中身を出力できる。

この方法でも、TestTable0の中身を出力できる。

Sample/dotnet/SqlDataReader/Item_name/src/SqlDataReader_ at master · bg1bgst333/Sample · GitHub

SqlDataReader.Item[]

SqlDataReaderオブジェクト自体がインデクサに対応してるので、Readした後にその行の各列のデータに添字でアクセスできる。

SqlDataReader.Item[] プロパティ (System.Data.SqlClient) | Microsoft Docs

MainClass.csで、

reader[0]なら1列目、reader[1]なら2列目、というように添字にInt32の値nを指定すれば、n + 1列目の値を取得できる。

このようにTestTable0の中身を出力できた。
このようにTestTable0の中身を出力できた。

このようにTestTable0の中身を出力できた。

Sample/dotnet/SqlDataReader/Item/src/SqlDataReader_ at master · bg1bgst333/Sample · GitHub

SqlDataReader.Read

SqlDataReader.Readで、1行ずつ読み込む。

SqlDataReader.Read メソッド (System.Data.SqlClient) | Microsoft Docs

読み込む行がなくなったら、falseを返す。

あらかじめTestTable0を3行にしておく
あらかじめTestTable0を3行にしておく

あらかじめTestTable0を3行にしておく。
MainClass.csで、

reader.Readがfalseになるまで、"Read OK!"と出力。

3回、"Read OK!"が出るということは、3行あるということ。
3回、"Read OK!"が出るということは、3行あるということ。

3回、"Read OK!"が出るということは、3行あるということ。

Sample/dotnet/SqlDataReader/Read/src/SqlDataReader_ at master · bg1bgst333/Sample · GitHub

SqlDataReader

SqlDataReaderを使って、結果を読み取る。

SqlDataReader クラス (System.Data.SqlClient) | Microsoft Docs

readerを取得した段階ではクローズされてない。
readerを取得した段階ではクローズされてない。

readerを取得した段階ではクローズされてない。

ここではCloseしてるのでクローズされてる。
ここではCloseしてるのでクローズされてる。

ここではCloseしてるのでクローズされてる。

Sample/dotnet/SqlDataReader/SqlDataReader/src/SqlDataReader_ at master · bg1bgst333/Sample · GitHub