我有一個列表框,其ItemsSource
設置爲。 ColumnMetadata
是一個結構。我可以很容易地通過將DisplayMemberPath
設置爲"Key"
來顯示鍵,但我無法弄清楚如何讓它顯示我的結構的成員。將DisplayMemberPath設置爲字典的結構值成員
我試過設置DisplayMemberPath
到"{Binding LocalizedColumn}"
,"Value.LocalizedColumn"
,"LocalizedColumn"
,"{Value.LocalizedColumn}"
和那些作品沒有。我只是在列表框中看到一堆空行。
我期待完成的所有工作就是將數據存入列表框。我不關心任何更新回到詞典,詞典將不會在列表填充後更新。
我現在已經在運行時激活代碼:
lstDatabaseColumns.ItemsSource = ImportData.GetAddressFieldData
lstDatabaseColumns.DisplayMemberPath = "Value.LocalizedColumn"
lstDatabaseColumns.SelectedValuePath = "Key"
我的結構是這樣的:
System.Windows.Data Error: 40 : BindingExpression path error: 'LocalizedColumn' property not found on 'object' ''ColumnMetadata' (HashCode=1118531966)'. BindingExpression:Path=Value.LocalizedColumn; DataItem='KeyValuePair`2' (HashCode=-1578744570); target element is 'TextBlock' (Name=''); target property is 'Text' (type 'String')
正確的'DisplayMemberPath'是「Value.LocalizedColumn」。如果它不起作用,請檢查VS中的輸出窗口是否存在綁定錯誤 – 2010-11-09 23:17:48