0

所以我有一个 Dictionarr 并将它绑定到一个 ListView ......

        this.dbMessages = new Dictionary<string,string>( dbMessages );
        this.dbPathStr = @"C:\DATABASEROOT\" + databaseName;
        this.dbNameStr = databaseName.Remove(databaseName.LastIndexOf("."));

        dbName.Text = dbNameStr;
        dbPort.Text = "0000";
        msgList.ItemsSource = dbMessages;
        msgList.DisplayMemberPath = "Key";
        msgList.SelectedValuePath = "Value";

现在这让我开始选择值,当用户选择一个值并点击添加按钮时,我需要提取键和值以及表单上的其他信息来构建自定义类对象。

问题是关键......

classObject(string key, string value, string otherinfo) //this is the constructor

我尝试通过 selectedItem.tostring 访问密钥,这给了我一对,我真的不想进入字符串操作。

我曾尝试将它转换回字典,但显然一旦转换它就无法转换回通用字典....

4

1 回答 1

3

如果SelectedItem给你这对,只需投射它并访问密钥,例如

var pair = (KeyValuePair<string, string>)msgList.SelectedItem;
var obj = new classObject(pair.Key, pair.Value, otherInfo);
于 2013-10-21T13:21:31.293 回答