0
嗨如何將UI對象中的類對象傳遞給用戶控件datagridview?將類對象傳遞給usercontrol
我創建了一個用戶控件,它有一個datagridview,一個位於datagridview之上的搜索文本框和一個顯示總數的標籤。我想要在該控件中編寫以下功能。
- 顯示綁定到datagridview的該對象的總計數。
- TextChange事件過濾datagridview中的數據。
我想上面的功能寫在Usercontrol中,因爲我覺得在UI窗體中重複這些功能是多餘的。 對於這一點,我創建一個數據源在用戶控件
public object Datasource { get; set; }
1)如果我的類對象是例如User
,我如何獲得轉換爲用戶的數據源的類型,並獲得總用戶數並綁定到usercontrol中的標籤?
2)我覺得在每種形式下面寫下這些是多餘的。我如何簡化這一點,並通過使用傳遞給它的數據源使其在userControl本身中運行。
private void BaseCRUDForm_GridViewTextChangedSearch(object sender, EventArgs e)
{
if (sender.ToString().Length > 0)
{
Users = Users.Where(x => x.Name.StartsWith(sender.ToString())).ToList();
}
else
{
Users = Repository.UserRespository(false).GetAllUsers();
}
UserBindingSource.DataSource = Users;
}
請指教。
但我如何獲得對象的類型?你能告訴我一個例子嗎? – VeecoTech 2011-05-04 07:28:57
假設以下是通用類。公共類泛型 { public int a; public string str; }假設用戶控制類在公共類Userctl {私人對象aa; public Userctl(object a) {aa = a; }如果(aa.GetType()。Name.Equals(「泛型」)) 泛型g =(泛型)aa; grid.datasource = g; } } }現在在主窗體中填充泛型類泛型數據g = new generics(); g.str =「test1」; g.a = 1; 及以下是用戶控件Userctl c = new Userctl(g)的實例;如有任何混淆,請通知我。 – Pankaj 2011-05-04 07:46:24
您對此有何評論? – Pankaj 2011-05-04 08:17:05