FineUI 官方论坛
标题:
动态生成可缟辑Grid列时不能保存
[打印本页]
作者:
No.1
时间:
2013-8-31 21:51
标题:
动态生成可缟辑Grid列时不能保存
本帖最后由 No.1 于 2013-8-31 22:20 编辑
动态生成可缟辑Grid列后,如果不在可编辑列输入数据时,点保存按扭保存事件可正常通过,当输入数据时点保存事件报错提示未将对象实例是什么情况
前台
<x:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="表格"
runat="server" DataKeyNames="Guid" AllowSorting="true" ClicksToEdit="1" AllowCellEditing="True" >
<Toolbars>
<x:Toolbar ID="Toolbar1" Position="Top" runat="server">
<Items>
<x:Button ID="btnNew" runat="server" Icon="Add" Text="新增项目"
OnClick="btnNew_Click" ></x:Button>
</Items>
</x:Toolbar>
</Toolbars>
</x:Grid>
后台生成
private void InitGrid()
{
//工资奖金基数
gridgroupcolumn = new GridGroupColumn();
gridgroupcolumn.HeaderText = "工资奖金基数";
gridgroupcolumn.TextAlign = FineUI.TextAlign.Center;
RenderField rd = new RenderField();
for (int i = 0; i < ds2.Tables[0].Rows.Count; i++)
{
rd = new RenderField();
rd.DataField = "jj" + (i + 1).ToString();
rd.FieldType = FineUI.FieldType.String;
rd.HeaderText = ds2.Tables[0].Rows
["jjxmmx"].ToString().Trim();
rd.TextAlign = FineUI.TextAlign.Center;
rd.Width = Unit.Parse("80px");
FineUI.NumberBox nb = new NumberBox();
nb.ID = "jj" + (i + 1).ToString();
rd.Editor.Add(nb);
gridgroupcolumn.Columns.Add(rd);
}
}
后台存保取值
protected void btnNew_Click(object sender, EventArgs e)
{
foreach (GridRow row in Grid1.Rows)
{
foreach (object value in row.Values)
{
er
= value.ToString();
i++;
}
sql = "update wy_jjjl_mx set ";
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
float jj = 0;
try
{
jj = float.Parse(er[6 + k]);
}
catch
{
}
sql = sql + "jj" + (k + 1).ToString() + "=" + jj + ",";
}
sql = sql + "gzjjhj=" + gzjjhj.ToString() + ",ykgs=" + ykgs.ToString()
+ ",skgs=" + skgs.ToString() + ",sdjj=" + sdjj.ToString() + " where id=" + row.DataKeys[0].ToString();
i = 0;
}
}
作者:
rongxiwang
时间:
2013-11-6 15:29
遇到了同样的问题,不知道怎么解决,求大神
作者:
rongxiwang
时间:
2013-11-9 11:17
前两天遇到了这个问题,但是我解决了,目前是动态创建,修改后,可以进行保存了,大神勿喷,我的方法是将动态创建Grid的方法写进Page_Init中,就好了
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4