如何调用此方法将其绑定到Infragistics控件?

时间:2012-08-02 21:40:41

标签: c# infragistics webdatagrid

只要删除对象源,EventArgs e并从page_load调用方法,此方法就会正确加载数据并将其绑定到infragistics控件。

删除对象源,eventArgs e?

是个好主意
protected void dgvAppts_NeedDataSource(object source, EventArgs e)
        {
            if (Session.IsNewSession == false)
            {
                DataTable ApptTable = new DataTable();
                ApptTable = objGatewayFunctions.GetAppointmentReCap(Session["LoginID"].ToString(), RecapDate.ToShortDateString(), "R", ConfigurationManager.AppSettings["Connection"].ToString());
                this.dgvAppts.DataSource = ApptTable;
                //if (ApptTable.Rows.Count == 0)
                //{
                //    this.uwtTabs.Tabs(0).Style.ForeColor = System.Drawing.Color.Gray;
                //}
                //else
                //{
                //    this.uwtTabs.Tabs(0).Style.ForeColor = System.Drawing.Color.Black;
                //}
            }
        }

如果最好有对象源,则EventArgs e存在于方法中。如何调用该函数以便它可以加载WebDataGrid?

2 个答案:

答案 0 :(得分:1)

您需要将方法作为事件处理程序分配给网格控件中的NeedDataSource事件。

在设计器中选择您的网格,打开“属性”窗口,然后选择您的方法作为NeedDataSource事件的事件处理程序。

看起来这个方法与事件分离了,这就是你必须自己调用它的原因。它应该是网格控件,当它需要数据源时通过引发事件来调用你的方法。

答案 1 :(得分:1)

我不认为Infragistics WebDataGrid有NeedDataSource事件;听起来好像是使用Telerik控件转换代码。

如果是这种情况,则无需调用方法

protected void dgvAppts_NeedDataSource(object source, EventArgs e)

您可以将其称为

之类的内容
protected void BindMyGrid()

并确实从页面加载中调用它(只有在页面不处于回发模式时才可能检查它)