我有一个名为Part的类,它有2个字段,PartNo&文件名。我列出了“部件”,然后将列表设置为列表框控件的数据源。然后我将displaymember设置为“PartNo”,将ValueMember设置为“Filename”。因此,当用户选择列表框中的项目时,我想使用“文件名”值。我无法弄清楚如何访问它,但intellisense向我展示了这个表达式:
((Part)(drawingList.SelectedValue)).Filename
工作正常,但我想知道是否有不同的方式来访问这个值因为看起来有点过于复杂,我想有更好的方法来引用它。如果有的话,我可以更好地理解语言。
谢谢!
答案 0 :(得分:2)
我唯一要改变的是删除不必要的括号:
((Part)drawingList.SelectedValue).Filename
由于List控件通常不是类型化的,因此在这种情况下需要强制转换,而基于C语言的编译语言中的强制转换往往需要一个不幸的括号。如果很难看,你当然可以将它分成几行,但是大多数C#开发人员都可以理解代码。
var selectedPart = (Part)drawingList.SelectedValue;
var selectedFilename = selectedPart.Filename;