
お世話になります。さっそくですが、質問です。
現在、VB.NET 2008で開発を行ってます。
質問の目的は、
実行プログラムにおいて、
画面に配置したコンボボックスをクリックした際、
以下の値を選択肢として表示させることです。
(【性別】の選択肢)
・男性
・女性
Form_Load()時に、コンボボックスに上記の値を固定でセットしています。
-------------------------------------------------
Public Function getDataField1() As DataSet
'変数宣言
Dim ds As DataSet
Dim dt As New DataTable
Dim dr As DataRow
dt.Columns.Add("DataTextField", GetType(String))
dt.Columns.Add("DataValueField", GetType(String))
'空白セット
dr = dt.NewRow()
dr("DataTextField") = " "
dr("DataValueField") = ",,,,"
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("DataTextField") = "1"
dr("DataValueField") = "男性"
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("DataTextField") = "2"
dr("DataValueField") = "女性"
dt.Rows.Add(dr)
ds = New DataSet
ds.Tables.Add(dt)
Return ds
End Function
Private Sub Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim ds As DataSet
'性別の取得
ds = getDataField1()
For i As Integer = 0 To 2
cmb_性別.Items.Add()
ds.Tables(0).Rows(i).Item("DataValueField").ToString()
Next i
End Sub
-------------------------------------------------
上記内容の場合、コンボボックスをクリックしても
選択肢としては"空白"しか表示されません。
セットした値をコンボボックスの選択肢として表示させる方法を
ご存知の方がいらっしゃいましたら、ご教授願えますでしょうか?
No.1ベストアンサー
- 回答日時:
コンボボックスには表示するデータの為のプロパティがありまして、DataSourceというものがあります。
そして、画面に表示する値と内部的に使用する値を指定するプロパティもありまして、それぞれDisplayMemberとValueMemberです。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim ds As DataSet
'性別の取得
ds = getDataFields()
Me.ComboBox1.DataSource = ds.Tables(0)
Me.ComboBox1.DisplayMember = ds.Tables(0).Columns("DataValueField").ToString()
Me.ComboBox1.ValueMember = ds.Tables(0).Columns("DataTextField").ToString()
End Sub
Private Function getDataFields() As DataSet
'変数宣言
Dim ds As DataSet
Dim dt As New DataTable
Dim dr As DataRow
dt.Columns.Add("DataTextField", GetType(String))
dt.Columns.Add("DataValueField", GetType(String))
'空白セット
dr = dt.NewRow()
dr("DataTextField") = "0"
dr("DataValueField") = "...."
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("DataTextField") = "1"
dr("DataValueField") = "男性"
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("DataTextField") = "2"
dr("DataValueField") = "女性"
dt.Rows.Add(dr)
ds = New DataSet
ds.Tables.Add(dt)
Return ds
End Function
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- 数学 単振り子とルンゲ・タック法 1 2022/07/15 00:05
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- 数学 初歩がわからない 分数の計算 1 2022/03/26 11:47
- Visual Basic(VBA) Excel VBA キーワードから列を取得して、さらに空欄行を非表示にする 3 2022/10/21 22:49
- Visual Basic(VBA) ユーザーフォームに2つのコンボボックス銀行名「ConboBox1」支店名を「ConboBox2」とし 4 2022/08/03 17:34
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
値を返さないコード パス
-
VB.NETでアクティブなformを知...
-
マクロで奇数と偶数の値を2か所...
-
PL/SQLでのTO_DATEの時間取得に...
-
オブジェクト型の変数同士の値...
-
VBA(自然数)
-
マクロ 特定のセル値のみクリ...
-
VB初心者。小数点以下の表示で...
-
textboxとLabelを動的に変更する
-
VBA ドロップダウンリストを残...
-
C#の質問です
-
Powershellのparamについて
-
シーケンサで最小値を保持する
-
ユーザーフォームのテキストボ...
-
vb6のVSFlexGridで選択行、列の...
-
VB6のデータを保持したい
-
WindowsFormアプリケーションに...
-
ExcelでGaussian fittingをした...
-
Excel VBAのリストボックスの値...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
VBA ドロップダウンリストを残...
-
VB.NETでコンボボックスの1行目...
-
Excel VBAのリストボックスの値...
-
C#の質問です
-
VB初心者。小数点以下の表示で...
-
変数に代入してある数値を表示...
-
値を返さないコード パス
-
マクロで奇数と偶数の値を2か所...
-
DataGridView1のcellで計算
-
vb6のVSFlexGridで選択行、列の...
-
PL/SQLでのTO_DATEの時間取得に...
-
setcookieで「path」に複数の値...
-
変数名の取得
-
ACCESS VBA 画像ファ...
-
vbscriptを使いexcelを参照して...
-
Excel VBA 複数選択したリスト...
-
【C++/CLI.NET】コンボボックス...
-
シーケンサで最小値を保持する
-
マクロ 特定のセル値のみクリ...
おすすめ情報