FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 3873|回复: 2
打印 上一主题 下一主题

Grid列动态绑定后,如何使新增加的WindowField显示在后面?

[复制链接]
跳转到指定楼层
楼主
发表于 2012-3-11 19:44:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用Grid生成动态列,数据绑定后,想在数据行的最后增加一些操作,例如:编辑,删除等。但是不行,只能显示在每行的最前面。
向高手请教!
沙发
发表于 2012-3-13 12:19:25 | 只看该作者
如果有代码和图片就好理解了
板凳
 楼主| 发表于 2012-3-13 20:39:23 | 只看该作者
本帖最后由 六月雪 于 2012-3-13 21:00 编辑



不绑定字段,可以在aspx文件中实现窗口列和模板列在每一行的后面(如上图),代码如下:
<Columns>
<ext:BoundField Width="100px" SortField="年" DataField="年" DataFormatString="{0}" HeaderText="年" />
<ext:BoundField Width="60px" DataField="月" HeaderText="月" />
<ext:BoundField Width="60px" DataField="日" HeaderText="日" />
<ext:BoundField Width="100px" SortField="温度" DataField="温度" DataFormatString="{0}" HeaderText="温度" />
<ext:CheckBoxField Width="60px"  RenderAsStaticField="true" DataField="有效" HeaderText="有效" />
<ext:WindowField ColumnID="myWindowField" Width="60px" WindowID="Window111" HeaderText="窗口列"
Icon="TableEdit" ToolTip="编辑" DataTextFormatString="{0}" DataIFrameUrlFields="Id"
DataIFrameUrlFormatString="grid_iframe_window.aspx?id={0}" DataWindowTitleField="温度"
DataWindowTitleFormatString="编辑 - {0}" />
<ext:TemplateField HeaderText="模板列">
<ItemTemplate>
<a href="<%# GetEditUrl(DataBinder.Eval(Container.DataItem, "Id"), DataBinder.Eval(Container.DataItem, "温度")) %>">
编辑</a>
</ItemTemplate>
</ext:TemplateField>
</Columns>
如果在aspx.cs文件中动态绑定字段,则窗口列和模板列全部显示在前面。
<Columns>
<ext:WindowField ColumnID="myWindowField" Width="60px" WindowID="Window111" HeaderText="窗口列"
Icon="TableEdit" ToolTip="编辑" DataTextFormatString="{0}" DataIFrameUrlFields="Id"
DataIFrameUrlFormatString="grid_iframe_window.aspx?id={0}" DataWindowTitleField="温度"
DataWindowTitleFormatString="编辑 - {0}" />
<ext:TemplateField HeaderText="模板列">
<ItemTemplate>
<a href="<%# GetEditUrl(DataBinder.Eval(Container.DataItem, "Id"), DataBinder.Eval(Container.DataItem, "温度")) %>">
编辑</a>
</ItemTemplate>
</ext:TemplateField>
</Columns>

在init中运行如下代码:
Dim bf As ExtAspNet.BoundField
bf = New ExtAspNet.BoundField()
        bf.DataField = "年"
        bf.DataFormatString = "{0}"
        bf.HeaderText = "年"
        Grid1.Columns.Add(bf)

        bf = New ExtAspNet.BoundField()
        bf.DataField = "月"
        bf.DataFormatString = "{0}"
        bf.HeaderText = "月"
        Grid1.Columns.Add(bf)

        bf = New ExtAspNet.BoundField()
        bf.DataField = "日"
        bf.DataFormatString = "{0}"
        bf.HeaderText = "日"
        Grid1.Columns.Add(bf)

        bf = New ExtAspNet.BoundField()
        bf.DataField = "有效"
        bf.DataFormatString = "{0}"
        bf.HeaderText = "有效"
        Grid1.Columns.Add(bf)

通过程序如何使窗口列和模板列还是放在行的后面,另外cs程序中可以动态绑定窗口列和模板列吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-22 16:42 , Processed in 0.045465 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表