
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
juujuu2929さん こんにちわ
以前、サンプルを提示しました NOBNNN です。
子フォーム 云々かんぬん と考える前に基本技術をみにつけないと
意味がわからないまま 作業をしていることになります。
簡単なDBアプリケーションサンプルをいくつか作ってみて習得してください。
参考:
■ Visual Studio 2005によるWindowsデータベース・プログラミング
http://www.atmarkit.co.jp/fdotnet/vblab/vsdbprog …
■ 第1回 DBアプリのデータソースとなるデータベースの作成
http://www.atmarkit.co.jp/fdotnet/vblab/vsdbprog …
■ 第2回 データセットとデータテーブル
http://www.atmarkit.co.jp/fdotnet/vblab/vsdbprog …
■ 第3回 テーブルアダプタの基礎
http://www.atmarkit.co.jp/fdotnet/vblab/vsdbprog …
マイクロソフトでは チュートリアル を公開しています。
■「300 秒でズバリ !!」 & 「10 行でズバリ !!」 シリーズ
http://msdn.microsoft.com/ja-jp/events/dd283146. …
上記のサイトで勉強してください。
今回の質問に関係することは
1、DBにアクセスし、どうやって自分のコントロール(たとえば DataRepeater) にデータを充填するのか
バインドはどうするのか?
2、子フォーム つまり別クラスで作業をした、
この場合は子フォーム側でDBを更新した結果をえるのか?
この2点です。
1、については 上記参考サイト「第3回 テーブルアダプタの基礎」を参考にしてください。
VB.NETは 2002 からバージョンアップされてきていますので いくつかの方法があります。
まずは OleDataAdapter
サンプル: http://hiros-dot.net/VBNET2005/Control/DataSet/D …
つぎに TableAdapter
サンプル : http://msdn.microsoft.com/ja-jp/events/dd279516. …
バインドするには
TEXTBOX、DataGridView や DataRepeater などのコントロールオブジェクトに DataTable を指定する場合は
TEXTBOXにDataTableをバインド
Me.Txt販売コード.DataBindings.Add("Text", DT_Row, "販売コード")
Me.Txt支店.DataBindings.Add("Text", DT_Row, "支店")
Me.Txt商品.DataBindings.Add("Text", DT_Row, "商品")
DataGridView サンプル: http://d.hatena.ne.jp/coma2n/20090924/1253779717
2については
クラスプログラミングを勉強する必要があります。
参考: オブジェクト指向入門
http://www.atmarkit.co.jp/channel/oo/oo.html
以上
No.3
- 回答日時:
DataRepeater1のDataSourceを更新しないことには、テキストボックスの内容を更新させようとしても、古いままです。
「DBにアクセス」して、「最新のデータ」を「DataRepeaterに与えてあげる」ことが必要です。
私の最初の発言
「初期読み込み部分を関数化し」
補足にそちらで試した4命令が載っていますが、初期読み込み時に、その内のどの命令かをお使いですか?
通常「DB再読み込み」という命令などありません。
「DB再読み込み」という処理を行うために、「その部分を関数化する必要がある」と伝えているのです。
[DdBindingSource]
って何?変数?コントロール?取得方法は?
こちらも何もわからない状況で、4命令だけ部分公開して「わからない」と言われても、何も言えません。
・前後関係
・変数/オブジェクト命名の統一化(宣言の部分とコメントによる補足)
・エラー発生時には、発生箇所/エラー番号/メッセージ内容
などを注意して行うと、求める的確な情報が得られやすいと思います。
No.2
- 回答日時:
ShowDialogは、ダイアログとして表示するだけの機能ではありません。
呼ばれた側は、ステータスを返却できます。
>初心者なのでコーディング内容がわかりません
初心者であればなおの事、「丸投げの質問」をするのではなく
・まずやってみる
・部分的にわからないところを、前後関係のソースを載せ、質問する
というようにしましょう。
お礼欄にありましたが、自分で「ShowDialog」というキーワードを載せていますが、それでググってみましたか?
サンプルはいくらでも転がっているはずです。
会社でやっているのであれば、他の業務のソースもあるでしょうし、自宅でやるのであれば、何らかの書籍を一冊はもっているのではないですか?
>関数化と実行のプログラミング内容を教えてください。
と言われても、大まかにしか答えられません。
先にも言ったように、「初期読み込み部分を関数化」です。
あなたのコードがわからないのに、こちらで関数化なんてできません。
何となくのサンプルを載せてはおきますが、この程度のサンプルは、ちょっと探したらいくらでも転がっております。
http://okwave.jp/search?word=ShowDialog&boolean= …
ここの掲示板でShowDialogの質問はいっぱいあります。
目的にマッチするものがあるかはわかりませんが、一つ一つ目を通すのを「手間」と感じていてはいけません。
上級者はもっと的確に履歴を絞りはしますが、絞りきれないときは、やはり全て目を通していきます。
そこから本来の目的とは違っても、目から鱗のテクニックを見つけることもあります。
まずは努力を・・・
'------------------------------
'ダイアログ呼び出し側
'------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'フォーム2をダイアログで表示
Dim l_frm2 As New Form2
'ダイアログでからの戻り値を取得
Dim l_dlgRet As Windows.Forms.DialogResult = l_frm2.ShowDialog()
'戻り値による分岐
Select Case l_dlgRet
Case Windows.Forms.DialogResult.OK
Call MsgBox("OKが帰ってきたので、読み込み処理")
'ここで関数を実行
Case Windows.Forms.DialogResult.Cancel
Call MsgBox("キャンセルされてきたので、何もしない")
End Select
End Sub
'------------------------------
'ダイアログ側(Form2)
'------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'OKボタン処理
Me.DialogResult = Windows.Forms.DialogResult.OK
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'キャンセルボタン処理
Me.DialogResult = Windows.Forms.DialogResult.Cancel
End Sub
この回答への補足
またまた早々にありがとうございました。
書籍は3冊、逆引き500や基本などの本ですが、今回親フォーム側でリスト形式でDataRepeaterを使って表示させ、その中に「子フォーム」へのボタンを配置しております。クリックにより子フォームが開き、該当するデータを更新できるのですが、戻ってきた際親フォームのDB表示は変更前のままになってて苦戦中でした。
showdialogにしてもだめ、サイトからDataRepeaterを使用する際は.ResetBindings(false)で再読込みが必要(癖があるから?)だとの情報で設定してもダメ。本屋さんではあまりDataRepeaterの記載もなく苦戦しておりました。
また探し方もダメだったんですね。「DB 再 読込み」とかで検索している時点で間違っていたのかもしれません。
戻ってきた際、
'DdBindingSource.ResetBindings(False)
'Me.Refresh()
'Me.ResetText()
'f4.Dispose()
も順番に足してデバックしてみたのですがダメでした。配置の問題なのかそもそも間違っているのか、余計わけがわからなくなってあせっていました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) VB.net フォーム 親子 1 2022/07/04 19:00
- JavaScript 空白で入力フォームのボタンをクリックしたら、ブラウザの上部からjavascriptで 表示されるアラ 1 2022/05/20 11:16
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- JavaScript ソースコードは下の共有コードサイト「張り紙」にあります。 入力フォームの javascript で 1 2022/05/11 11:01
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
- その他(ブラウザ) Mycrosoft Edge フォームの履歴を完全に削除したい 3 2022/08/11 09:59
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
このQ&Aを見た人はこんなQ&Aも見ています
-
別フォームから戻ったときのイベント
Visual Basic(VBA)
-
フォームの再読み込み
Visual Basic(VBA)
-
Chr(13)とChr(10)の違いは?
PowerPoint(パワーポイント)
-
-
4
DataGridViewの、選択されている行を取り出したい
Visual Basic(VBA)
-
5
DataGridViewに空白がある場合はエラーにしたい
Visual Basic(VBA)
-
6
DataGridViewのデータの引渡しについて
Visual Basic(VBA)
-
7
CloseとDisposeの違い
Visual Basic(VBA)
-
8
別のフォームで記述している関数を実行するには?C#
C言語・C++・C#
-
9
インスタンス参照でアクセスできない。代わりに型名?
C言語・C++・C#
-
10
DataGrdViewに関連付けたデータの更新
C言語・C++・C#
-
11
C# 超初心者です。 this.Refresh();という文を使いたいです
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
Form_Load と Form_Activate の...
-
フォームのテキストボックスな...
-
Microsoft Formsの「個人情報や...
-
Hideについて(.NET)
-
VBAでユーザーフォームを再表示...
-
テキストボックス入力データの...
-
パソコンの画面に合わせてユー...
-
EXCEL VBA ユーザーフォームの...
-
クリックイベントなのに、2回ク...
-
モーダルフォームとモードレス...
-
C#で起動時のフォームを非表示...
-
フォームのアクティブと非アク...
-
エクセルVBAのフォームを最...
-
エクセルのチェックボックスの...
-
フォームを表示してからメッセ...
-
(Excel+VBA)ユーザーフォームの...
-
ユーザーフォーム上に現在日時...
-
VBA フォームに入力された...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
Form_Load と Form_Activate の...
-
VBAでユーザーフォームを再表示...
-
Microsoft Formsの「個人情報や...
-
クリックイベントなのに、2回ク...
-
ユーザーフォームのテキストボ...
-
ユーザーフォーム上に現在日時...
-
ACCESSのフォーム、開くんです...
-
エクセルのチェックボックスの...
-
エクセルVBAのフォームを最...
-
VB.NETでフォームロード中のエ...
-
EXCEL VBA ユーザーフォームの...
-
VBA(エクセル)のユーザー...
-
【Excel VBA】ユーザフォームを...
-
Hideについて(.NET)
-
(Excel+VBA)ユーザーフォームの...
-
モーダルフォームとモードレス...
-
VBA コンボボックスとテキスト...
-
アクセス2013 フォームが...
おすすめ情報