に応じてテキストボックスの値を変更しますオブジェクト。は、私は、テキストボックスにコンボボックスの値を選択して取得する以下のコードを試してみましたが、それは私に次のエラーを与える</p> <p>エラーしている選択されたコンボボックスの値
コード
private void frmpaymentsearch_Load(object sender, EventArgs e)
{
txtcomvalue.Text = "PaymentVoucherCode";
dllby.DisplayMember = "Text";
dllby.ValueMember = "Value";
dllby.Items.Add(new { Text = "P.Voucher Code", Value = "PaymentVoucherCode" });
dllby.Items.Add(new { Text = "Vendor", Value = "VendorName" });
dllby.SelectedIndex = 0;
}
private void dllby_SelectedIndexChanged(object sender, EventArgs e)
{
txtcomvalue.Text = dllby.SelectedValue.ToString();
}
あなたはそれが 'SelectedValueのためにnullを返しますComboBox'' 'ためDataSource'を使用しない場合'。 –
一般的な解決方法として、['GetItemValue'](http://stackoverflow.com/a/38305363/3110834)拡張メソッドに依存することができます。 'ValueMember'に基づいてitemの値を以下のように抽出します:' var value = comboBox1.GetItemValue(comboBox1.SelectedItem).ToString(); '。 'ComboBox'と' ListBox'はテキストを取得するための 'GetItemText'を持っていますが、GetItemValueがありません。リンクされたポストは、この不足を解決する拡張メソッドを共有しました。 –