使用c# . net解析ListBox的SelectedValue为int

本文关键字:SelectedValue int ListBox net 解析 使用 | 更新日期: 2023-09-27 18:05:50

我有一个使用字典作为数据源的列表框。

当我想解析listbox的selectedvalue为一个int变量时,它给了我一个强制转换异常。

字典~

Dictionary<int, string> AssetDictionary = new Dictionary<int, string>();

listbox (lstAsset)数据源~

lstAsset.DisplayMember = "Value";
//lstAssetType.ValueMember = "Key";   //This should be lstAsset as corrected in the next line
lstAsset.ValueMember = "Key";
lstAsset.DataSource = new BindingSource(AssetDictionary, null);

出现异常的行~

int ush = (int)lstAsset.SelectedValue; //Specified cast is not valid.

我哪里做错了?

使用c# . net解析ListBox的SelectedValue为int

提供值成员以纠正控件。

lstAsset.ValueMember = "Key";
使用

int ush = Convert.ToInt32(lstAsset.SelectedValue.ToString());