//引用表发生改变时
        protected void ddl_RefTableName_SelectedIndexChanged(object sender, EventArgs e)
        {
            HBDropDownList ddl_RefTableName = (HBDropDownList)sender;
            HBDropDownList ddl_RefFieldName = null;

            GridView grid = (GridView)rpt_Entities.Items[Convert.ToInt32(ddl_RefTableName.Attributes["rptRowNum"])].FindControl("grid");

            if (grid != null)
            {
                ddl_RefFieldName = (HBDropDownList)grid.Rows[Convert.ToInt32(ddl_RefTableName.Attributes["gridRowNum"])].FindControl("ddl_RefFieldName");
            }

            if (ddl_RefFieldName == null || ddl_RefTableName == null)
            {
                return;
            }

            var dataSource = collectReapterData();

            ddl_RefFieldName.DataSource     = this.getRefFieldData(dataSource, ddl_RefTableName.SelectedValue);
            ddl_RefFieldName.DataTextField  = "Value";
            ddl_RefFieldName.DataValueField = "Key";
            ddl_RefFieldName.DataBind();
        }
        protected void SetDorpDownListItem(List <SapFieldDataItem> dataSource)
        {
            //为引用表、引用字段下拉框赋值
            #region
            for (int i = 0; i < rpt_Entities.Items.Count; i++)
            {
                GridView grid = (GridView)rpt_Entities.Items[i].FindControl("grid");



                if (grid != null)
                {
                    grid.Columns[7].Visible = checkIsCommon.Checked;
                    grid.Columns[8].Visible = checkIsCommon.Checked;
                    if (i == 0)
                    {
                        // 如果是第一张表  则表 关联表和关联字段隐藏
                        grid.Columns[9].ItemStyle.CssClass    = "commonData";
                        grid.Columns[9].HeaderStyle.CssClass  = "commonData";
                        grid.Columns[10].ItemStyle.CssClass   = "commonData";
                        grid.Columns[10].HeaderStyle.CssClass = "commonData";
                    }
                    string key = ((LinkButton)rpt_Entities.Items[i].FindControl("del_item")).CommandArgument;

                    for (var j = 0; j < grid.Rows.Count; j++)
                    {
                        HBDropDownList ddl_RefTableName = ((HBDropDownList)grid.Rows[j].FindControl("ddl_RefTableName"));

                        if (ddl_RefTableName != null)
                        {
                            ddl_RefTableName.Attributes["rptRowNum"]  = i.ToString();
                            ddl_RefTableName.Attributes["gridRowNum"] = j.ToString();

                            List <string> ddl_dataSource = new List <string>();
                            ddl_dataSource.Add("--请选择--");
                            dataSource.Where(p => p.Key != key).Select(p => p.Key).ForEach(ddl_dataSource.Add);

                            ddl_RefTableName.DataSource = ddl_dataSource;
                            ddl_RefTableName.DataBind();

                            if (ddl_RefTableName.Items.FindByValue(dataSource[i].Collection[j].RefTableName) != null)
                            {
                                ddl_RefTableName.SelectedItem.Selected = false;
                                ddl_RefTableName.Items.FindByValue(dataSource[i].Collection[j].RefTableName).Selected = true;
                            }
                        }

                        HBDropDownList ddl_RefFieldName = ((HBDropDownList)grid.Rows[j].FindControl("ddl_RefFieldName"));
                        if (ddl_RefFieldName != null)
                        {
                            ddl_RefFieldName.DataSource     = this.getRefFieldData(dataSource, dataSource[i].Collection[j].RefTableName);
                            ddl_RefFieldName.DataTextField  = "Value";
                            ddl_RefFieldName.DataValueField = "Key";
                            ddl_RefFieldName.DataBind();

                            if (ddl_RefFieldName.Items.FindByValue(dataSource[i].Collection[j].RefFieldName) != null)
                            {
                                ddl_RefFieldName.SelectedItem.Selected = false;
                                ddl_RefFieldName.Items.FindByValue(dataSource[i].Collection[j].RefFieldName).Selected = true;
                            }
                        }
                    }
                }
            }

            #endregion
        }