将类对象传递给usercontrol
本文关键字:usercontrol 对象 | 更新日期: 2023-09-27 17:54:28
嗨,我如何在一个类对象从UI表单传递到用户控件datagridview?
我创建了一个用户控件,它有一个datagridview,一个搜索文本框在datagridview的顶部,和一个标签来显示总数。我希望在该控件中写入以下功能。
- 显示绑定到datagridview对象的总数
- TextChange事件来过滤datagridview中的数据
我希望上面的功能是在Usercontrol中编写的,因为我觉得在UI表单中重复是多余的。为此,我在usercontrol
中创建了一个数据源。 public object Datasource { get; set; }
1)如果我的类对象是例如User
,我如何获得转换为用户的数据源的类型,并获得总用户的计数,并绑定到用户控件中的标签?
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;
}
请建议。
在创建user control对象时,有两种方法来转发user control
中的数据初始化属性。该属性将具有对象类型,可以在稍后绑定到grid时进行分类。
传递数据给构造函数
我觉得你应该有一个构造函数,即点2。
现在,在转换这个对象之后,您可以填充标签和网格。