where 文字列はDictionary<string, List<string>>
ファイルへのパスです。ファイルの名前をコンボ ボックスに表示し、ファイル名を値として使用してキャプチャしたいと考えていますSelectedValueChanged
。
var cmbDatasource = (from moduleReference in moduleReferences
select new { FilePath = moduleReference.Key, Filename = new FileInfo(moduleReference.Key).Name }).ToList();
cmbModules.DataSource = cmbDatasource;
cmbModules.DisplayMember = "Filename";
cmbModules.ValueMember = "FilePath";
私は自分のSelectedValueChanged
イベントでこれをやっています
private void cmbModules_SelectedValueChanged(object sender, EventArgs e)
{
var cmb = (ComboBox)sender;
if (cmb != null)
{
var test = cmb.SelectedValue.ToString();
}
}
test
値メンバー (パス) にアポーズする匿名型になります。
私はここを見てきましたが、私が違うことをしていることはわかりません。
例
Dictionary<string, List<string>> moduleReferences = new Dictionary<string, List<string>>();
moduleReferences.Add("C:\Test.txt", new List<string>());
コンボボックスは表示されるはずですが、イベントをキャプチャすると、ディクショナリで検索することがTest.txt
期待されます。C:\Test.txt
私はここで何か悪いことをしていますか?