2010-06-17 67 views
0

嗨我經歷了很多網站,似乎無法找到答案。ArgumentException未處理Application.run

我修改了一個連接到通過C#Winforms應用上的tableadapter連接的Datagridview的視圖,爲了「重新連接」我必須刪除tableadapter並重新連接它。這是爲了擺脫關於Unique contstraints的錯誤。所以我固定的,現在在應用程序啓動,但是當我點擊選項卡上那格是我得到:

System.ArgumentException was unhandled 
    Message="Cannot bind to the property or column Id on the DataSource.\r\nParameter name: dataMember" 
    Source="System.Windows.Forms" 
    ParamName="dataMember" 
    StackTrace: 
     at System.Windows.Forms.BindToObject.CheckBinding() 
     at System.Windows.Forms.BindToObject.SetBindingManagerBase(BindingManagerBase lManager)......... 

我似乎無法找到答案這個問題。有人能幫我嗎?

感謝

回答

0

首先,我這個職位,你看到在application.Run此異常,這意味着它可能得到拋出高了很多了調用堆棧的標題注意到。你可以去菜單上的Debug-> Exceptions,並且在拋出異常時設置爲Break。這將幫助你確切地分離這種情況發生的時間。這聽起來像是有綁定信息設置,並且你記住了網格試圖綁定的其中一個屬性。

+0

我將例外設置爲引發時,但它仍停在相同的地方。這次它是綠色的,而不是像正常的未處理的例外那樣黃色。它說:「這是要執行的下一個聲明....」這讓我感到莫名其妙,因爲我不明白爲什麼它會停在那個位置......應用程序確實啓動它,就在我單擊帶有斷開連接的選項卡時數據集,它拋出錯誤。一旦錯誤被引發,導致應用程序在經過一堆初始化代碼後崩潰。 – user369758 2010-06-18 14:15:35

+0

你可以檢查完整的異常並獲得完整的堆棧跟蹤,這可能有助於找到問題所在。如果你可以發佈那個也會有幫助的堆棧跟蹤 – 2010-06-18 15:35:05

+0

我錯了,我解決了它不斷回來的問題。我儘可能地運行完整的執行,但我沒有看到任何有用的東西。以下是例外: 異常 (0)[System.Windows.Forms] System.ArgumentException:無法綁定到DataSource上的屬性或列ID。 參數名稱:在System.Windows的System.Windows.Forms.BindToObject.CheckBinding() 處的dataMember。Forms.BindToObject.SetBindingManagerBase(BindingManagerBase lManager) 這是我可以輸入的所有形式不允許任何更多:-( – user369758 2010-06-22 12:41:08

0

雖然我不喜歡我的解決方案,但我已經解決了這個問題。我再次刪除TableAdapter並重新命名它。然後,我重命名了原始名稱的所有實例(所有192個實例,儘管我已經刪除了適配器並重新創建了其中的192個仍在其中!然後我必須修復查詢,因爲我已經重命名了所有實例,並且使用了視圖名稱如TableAdapter的名字,因爲它是默認的希望這可以幫助別人

0

如果您更改網格或視圖中的架構和參考不再存在你會得到一個字段:

System.ArgumentException :無法綁定到DataSource.Parameter名稱上的屬性或列Id:dataMember

缺少的列名稱列在單詞列後面我缺少列「 ID」。我以爲我無法綁定到屬性或列Id例如。我讀了錯誤。從具有相同問題的其他人處解決,無法綁定到列 ALBUM。

我認爲如果錯誤來自更接近網格構建代碼而不是Application.Run,​​我可能已經看到它。也許即使它在網格/文本框綁定到ID字段時出錯,我也會看到它試圖用ID字段做一些事情,並發現它不在那裏。 Oy Vay :-)