我有一個簡單的'TODO'列表的Silverlight 4應用程序。我遇到的問題是數據綁定掛鉤了我的TODO
對象上的關係,這會導致RIA數據上下文在我需要它之前將它添加到DataContext.TODOs
列表中。 我想將對象視爲新對象並分離,直到我明確準備將其添加到datacontext。如何在我準備好之前防止Silverlight RIA實體附加到datacontext
下面是它如何工作的: 我已經得到了其與Status
(RIA服務實體關係)有關我TODO
實體。
我創建了一個新的TODO()
實體,它被傳遞給ChildWindow
彈出窗口。請注意,我不會將這個新實體添加到我的datacontext中。
new CreateTODOPopup(new TODO()).Show();
在我ChildWindow數據形我有Status
一個ComboBox這是數據綁定到DataContext.Statuses
。
的問題是,選擇從下拉列表中選擇Status
的作用下,實體實際上關聯到我的背景 - 結束了給它的EntityState.New
的狀態,實際上它添加到DataContext.TODOs
colleciton。
這樣會很好,除了它現在出現在主框架的主TODO列表中。我不想要這個,因爲它還沒有被ChildWindow提交。
我該如何解決這個問題?通過阻止實體被附加 - 或者以某種方式將它從任何控制中隱藏起來,直到它被添加爲止。
我從來沒有explititly附加它,它只是重視自己。我不知道什麼時候我會分開它 – 2010-07-14 21:18:00