2017-05-12 85 views
0

我在我的winform上有datagridview。我有一些其他進程經常需要打印在datagridview上的數據。哪些datagridview事件會在哪些地方打印我的數據?是否有可能通過某些事件或其他方法需要?C#中的DataGridView WinForm

+0

[計時器](https://msdn.microsoft.com/en-us/library/system.windows.forms.timer(v = vs.110).aspx)可觸發事件經常。 – Sinatr

+0

爲什麼不在數據進入datagridview時觸發要觸發的內容? – Taco2

+0

一般來說,將網格綁定到綁定源並更新該源是最容易的。源將激發適當的事件(假設使用諸如BindingList <>的源)。唯一的缺陷是異步更新。如果源從另一個線程(而不是創建網格的線程)更新,則會出現錯誤。 (在這種情況下,你可以使用一個扁平列表和'Invalidate()'當更新或在一個計時器中的網格) –

回答

0

您可以創建一個每當需要打印datagridview時調用的方法。

dt2.Rows.Clear(); //clear datagridview 
//dt2 is a datatable 
//here u can load your data into a datatable or what every you want 
dataGridView2.DataSource = dt2; 

把這段代碼放到一個方法中,每當你需要它時調用它。 (例如每5秒計時器)

+0

我的數據網格是一個記錄器,我想保留數據,即使有人正在關閉應用程序。無論何時有人打開此項,先前的數據應該保留並繼續使用新操作記錄新數據。這個怎麼做? – user7588316

+0

你可以用文本文件或類似的東西來保護它,當你打開應用程序時閱讀這個文件。 – tatatoto

+0

我的需求 - 記錄器是用於顯示來自其他應用程序的數據的帶有datagrid控件的winform。其他應用程序只是發送需要在記錄器上捕獲的字符串,而不管記錄器是否在運行。當用戶打開記​​錄器時,應顯示所有數據。您的意思是說我需要將所有數據寫入文本文件並使用此文本文件更新記錄器。對? – user7588316