我有一个这样声明的Dictionary对象:

Dictionary<string, string> LotMaterialList = new Dictionary<string, string>();


我稍后将这样填充组合框:

cbxMaterials.ItemsSource = LotMaterialList;
cbxMaterials.DisplayMemberPath = "Value";
cbxMaterials.SelectedValuePath = "Key";


一切正常。我将其放在面板上的弹出窗口中,并正确显示所有信息。在组合框的“选择更改”上,我有以下代码:

if (null != cbxMaterials.SelectedValue)
{
  CreateEditMaterial.materialId = cbxMaterials.SelectedValue.ToString();
  CreateEditMaterial.materialDesc = LotMaterialList(CreateEditMaterial.materialId);
}


而且LotMaterialList给了我The name 'LotMaterialList' does not exist in the current context我以前做过的错误,没有任何问题,然后比较了我这样做的错误和我没有发现任何区别。所以我想我缺少了一些非常简单的东西。

有什么建议吗?

谢谢

最佳答案

您使用的是()而不是[]来访问Dictionary

更换:

CreateEditMaterial.materialDesc = LotMaterialList(CreateEditMaterial.materialId);




CreateEditMaterial.materialDesc = LotMaterialList[CreateEditMaterial.materialId];

10-06 10:34