FineUI 官方论坛
标题:
(求代码分享)grid 动态添加列 动态绑定数据
[打印本页]
作者:
flyboywfy
时间:
2015-3-31 10:15
标题:
(求代码分享)grid 动态添加列 动态绑定数据
有没有成功实现grid动态绑定列和数据的,求代码分享?
我目前的问题是 按钮点击之后要改变列的列头,无法更新。
我的方法是1、在Page_Init中更新列
代码是
protected void Page_Init(object sender, EventArgs e)
{
InitGrid();
}
protected void InitGrid()
{
string YearMonthValue = string.Format(tbxYear.Text + "-" + ddlMonth.SelectedValue);
//根据年月获取 该月的日期对象
List<WorkingCalendar_Model> ListWCM = WorkingCalendar_BLL.GetWCMListByYearAndMonth(YearMonthValue);
if (ListWCM.Count > 0)
{
//移除所有列
Grid1.Columns.Clear();
Grid1.AllColumns.Clear();
FineUI.BoundField bf;
bf = new FineUI.BoundField();
bf.DataField = "UserName";
bf.DataFormatString = "{0}";
bf.HeaderText = "姓名";
bf.HtmlEncode = false;
bf.HtmlEncodeFormatString = false;
Grid1.Columns.Add(bf);
foreach (WorkingCalendar_Model wcm in ListWCM)
{
FineUI.BoundField bfnew;
bfnew = new FineUI.BoundField();
bfnew.DataField = DateTime.Parse(wcm.WorkDayTime.ToString()).ToString("yyyy-MM-dd");
bfnew.DataFormatString = "{0}";
//bfnew.HeaderText = wcm.WorkDayTime.Value.Day.ToString() + "号";
bfnew.HeaderText = DateTime.Parse(wcm.WorkDayTime.ToString()).ToString("MM-dd");
bfnew.HtmlEncode = false;
bfnew.HtmlEncodeFormatString = false;
Grid1.Columns.Add(bfnew);
}
FineUI.BoundField bfEnd;
bfEnd = new FineUI.BoundField();
bfEnd.DataField = "UserName";
bfEnd.DataFormatString = "{0}";
bfEnd.HeaderText = "姓名";
bfEnd.HtmlEncode = false;
bfEnd.HtmlEncodeFormatString = false;
Grid1.Columns.Add(bfEnd);
Grid1.DataKeyNames = new string[] { "UserName" };
//Grid1.RefreshIFrame();
// Grid1.UpdateTemplateFields();
// PageContext.RegisterStartupScript(Grid1.GetRefreshIFrameReference());
}
}
2、接着 page_load内容如下
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
tbxYear.Text = DateTime.Now.Year.ToString();
this.ddlMonth.SelectedValue = DateTime.Now.ToString("MM");
string YearMonthValue = string.Format(tbxYear.Text + "-" + ddlMonth.SelectedValue);
ddlOrgIDBind();
Bind();
}
}
3、绑定数据 是Bind()
目前的问题是 点击选中月份 列标题不会动态更新。
求教啊 。。。。。。
作者:
shihahayue
时间:
2015-3-31 11:03
单纯改表头文字用extjs就可以了,
作者:
flyboywfy
时间:
2015-3-31 11:06
shihahayue 发表于 2015-3-31 11:03
单纯改表头文字用extjs就可以了,
表头 是根据要绑定的数据动态 添加的。而且表头的列数也是动态变化的
作者:
flyboywfy
时间:
2015-4-1 15:50
有没有实际做过grid动态添加列的啊,帮忙提示下吧,最好带上代码
欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/)
Powered by Discuz! X3.4