我的c#窗體項目中有多個用戶控件。現在我只有一個窗體有多個按鈕,每個按鈕都有相應的用戶控件。現在的問題是,當我從usercontrol1向數據庫插入數據時,我需要在usercontrol2的datagridview中查看插入的數據。c#在另一個用戶控件中插入數據後刷新另一個用戶控件的datagridview
0
A
回答
0
我假設,你有一個ClickControl事件處理程序,用於調用UserControl1中的Button,以便將數據插入數據庫。
現在您必須從父窗體訪問UserControl2,找到DataGridView並再次執行數據綁定以獲取新數據。
我現在沒有視覺工作室,我盡我所能在這裏編寫代碼。
語法獲取父窗體:
Form parentForm = (this.Parent as Form);
然後找到usercontrol2
var uc2 = parentForm.Controls.Find("UserControl2", true);
,然後找到在DataGridView
var dg2 = (DataGridView)parentForm.Controls.Find("datagridview1", true);
然後做數據綁定
// Fetch Data from DataBase
dg2.DataBind();
0
您是否可以從表單中的userControl2訪問datagridview?
如果是這樣,則應在插入行後刷新DataSource。
如果和的UserControl1是usercontrol2與私人實現自定義控件,你可以到UserControl添加事件時,數據保存和方法userControl2可以刷新數據源
public partial class Form1:Form
{
public Form1()
{
InitializeComponent();
userControl1.DataSaved += (sender, e) => { userControl2.RefreshGrid(); }; // Attach event
}
}
class UserControl1 : UserControl
{
public event EventHandler DataSaved;
private void SaveData() // call this when user saves data
{
InsetDataToDb(); // real insert to db
var handler = DataSaved;
if (handler != null)
handler(this, EventArgs.Empty); // call event handler
}
}
class UserControl2 : UserControl
{
public void RefreshGrid()
{
// refresh data source of grid view
dataGridView.DataSource = GetDataSource();
}
}
+0
問題解決了 - 因爲我只有每個用戶控件的一個實例,我調用了填充datagridview需要更新的用戶控件。順便謝謝你的迴應 –
相關問題
- 1. ASP.NET從另一個用戶控件刷新用戶控件
- 2. 從另一個用戶控件刷新用戶控件中的ListView
- 3. 用戶控件內插入另一個用戶控件插入動態
- 4. 從另一個用戶控件打開c#用戶控件
- 5. 在另一個用戶控件中移動用戶控件
- 6. 如何將一個用戶控件放入另一個用戶控件
- 7. 從另一個用戶控件引用用戶控件
- 8. 從另一個用戶控件引用用戶控件
- 9. WPF用戶控件另一個用戶控件
- 10. 用戶控件從另一個用戶控件繼承
- 11. winform c#:在c事件後插入另一個窗體控件#
- 12. 從另一個用戶控件設置一個用戶控件的文本框
- 13. 在另一個用戶控件的用戶控件中引發事件
- 14. 在asp.net中使用另一個用戶控件中的一個用戶控件的問題C#
- 15. 在另一個控件中投射用戶控件
- 16. 一個用戶控件在AJAX回發期間更新另一個控件?
- 17. 如何從另一個用戶控件調用一個用戶控件中寫入的函數?
- 18. 將信息從一個用戶控件傳遞到另一個用戶控件
- 19. 如何從一個用戶控件導航到另一個用戶控件
- 20. 從一個用戶控件重定向到另一個用戶控件
- 21. 如何使用c#訪問一個用戶控件到另一個控件?
- 22. 更新基於另一個Web用戶控件的Web用戶控件
- 23. C#刷新Datagridview從一個帳戶註銷到另一個
- 24. 如何在另一個用戶控件中使用asp.net用戶控件?
- 25. Web用戶控件在另一個用戶控件上調用事件
- 26. 通過AJAX從另一個用戶控件更新用戶控件
- 27. 根據另一個用戶控件中的操作將焦點設置在一個用戶控件中
- 28. 用戶控件不會顯示在另一個用戶控件中
- 29. 將用戶控件替換爲WPF中的另一個用戶控件MaterialDesigntoolkit
- 30. 從RadTabStrip中的另一個用戶控件加載用戶控件
問題solved--,因爲我只有一個實例將被解僱每個用戶控件,我打電話的方法,填寫需要更新的用戶控件的datagridview ..順便謝謝你的迴應 –