我得到了DataGrid(Infragistic UltraGrid),該DataGrid被數據綁定到DataTable。如何掛起DataTable通知或數據綁定以防止UI更新
我想更新DataTable而不顯示數據網格上的任何更改,直到用戶單擊按鈕。
我已經嘗試過以下方法來暫停網格udpate,並且它們都不起作用。可能我不太瞭解數據綁定的工作原理。
ultraGrid.BeginUpdate()
- 這是ultraGrid特定的方法,從繪畫停止網格。適用於Aero主題,但如果您在窗口上使用「經典」主題,則網格自繪畫暫停後不會自行繪製。BindingSource.SuspendBinding()
- 這隻能暫停UI改變底層源,不在身邊BindingSource.RaiseListChangedEvent = false
的otherway - 試圖將其設置爲false,但網格仍進行自我更新。Grid.BindingContext = new BindingContext()
- 嘗試查看是否可以刪除任何基礎綁定以防止更新網格。這並不是在所有的工作,不知道如何使用它
其他的想法:
ultraGrid.SetDataBinding(null, null)
- 它基本上消除對所有信息網格這不是我想要的。創建快照並覆蓋網格 - 這確實是一個黑客,這是其他人建議的。我試圖避免做這樣的黑客攻擊。
請注意,在網格更新期間,由於打開了模式窗口,用戶無法訪問網格。用戶通過這個模式窗口更新數據表。這個想法是,當用戶點擊確定按鈕時,他們會看到網格中的變化。
感謝
BindingSource.SuspendBinding幫助? – CodingBarfield