我開始在c#中使用wpf和mvvm模式製作程序來學習此程序語言。我很抱歉,我終於遇到了使用Google無法解決的問題。但我試着精確。將SelectedItem作爲DataContext獲取完全獨立的Uielement
起初I present你的GUI,所以我可以更容易地解釋我的問題。
MainWindow的xaml文件來自here。
正如你所看到的,這不是一個嚴肅而重要的程序,我只是讓它學習一些技巧。
現在到了我的主要問題: 我還需要第二次的ListView的SelectedItem屬性(耗材)在頁腳。我認爲這不會是一個嚴重的問題,因爲我可以使用相對路徑和列表視圖的名稱將它綁定到選定的項目。這不起作用,一旦我添加一個項目到這個列表視圖導致一個空引用錯誤。我仔細檢查了代碼,我確信我沒有在那裏犯錯。所以我認爲問題在於它是一種後裔UI元素。
我的下一個嘗試是在我的主視圖模型中創建一個新的屬性,它綁定到選定的項目。你可以在第136行找到它。但是,當我發現,這也導致我一個System.NullReferenceException太多,如果我點擊一個項目。我認爲這是因爲這個屬性是隻讀的。我不知道該怎麼辦。 沒有任何其他可能性將SelectedItem作爲DataContext綁定到頁腳?
我的第二個問題是關於第27行。 TabControl應始終自動選擇第一個選項卡。但它只是每隔一秒纔會出現。這很有趣。如果我向下滾動冠軍組合框,第一個選項卡雲:選擇 - 未選擇 - 選擇 - ...
我的第三個也是最後一個問題是關於72這類似於線50(DataContext的太相同)但是,您看到第50行的itemtemplate的ContextMenu的ICommand起作用,而contextmenu(l.72)不調用Icommand。奇怪的。
這是一個有趣的項目,所以如果我的信息不夠,我可以爲您提供源代碼。 - 對不起,只有兩個超鏈接allowed--
請幫助我。我對這種無法預料的行爲感到有點困惑。我還沒有找到任何可以幫助我的東西,對於這些問題的答案很簡單,我很抱歉:P
只是爲了強調:主要問題是我真的需要一個答案。第二個可以通過編程方式解決。爲了解決第三個問題,我可以刪除這個功能。
我很高興爲每一個提示!
將問題分成多個部分(多個問題),每個問題都有示例代碼。這是一個很大的問題,難以一次閱讀。人們也可能只回答你的一個問題,這也使他們更容易回答。 –