FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

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

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

搜索
查看: 1753|回复: 5
打印 上一主题 下一主题

两个grid同时绑定时,会出现其中一个无法绑定

[复制链接]
跳转到指定楼层
楼主
发表于 2014-1-3 10:53:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DataTable dt;
。。。(省略dt赋值代码)
Grid2.DataSource = dt;
Grid2.DataBind();  

Grid1.DataSource = dt;
Grid1.DataBind();  

一个页面有两个Grid,分别是Grid1、Grid2。都绑定某DataTable。
结果就是后绑定的Grid1绑定正常,Grid2一片空白。
不知是否是因为整段代码只产生一次回发, 而fineui只接受了后一次,造成 Grid2无法绑定。怎样可以解决呢?
沙发
发表于 2014-1-3 11:02:43 | 只看该作者
我都绑定了三个都没有出现过这样的情况.
板凳
 楼主| 发表于 2014-1-3 12:01:23 | 只看该作者
甘桂 发表于 2014-1-3 11:02
我都绑定了三个都没有出现过这样的情况.

        我用直接绑定确实是可以的,但是我需要在表grid1双击产生事件,改变两个表。结果就无法更新下表。
前台代码:
<body>
    <form id="form1" runat="server">
    <extageManager ID="ageManager1" runat="server" FormLabelWidth="60" Theme="Blue" />     

<extanel ID="Form2" ShowHeader="false" runat="server" Height="750px" BoxConfigChildMargin="0 15 0 0"
         Title="Form" BoxConfigAlign="Stretch" Layout="VBox"><Items>

            <ext:Grid ID="Grid1" Title="Grid1" AllowSorting="true"
            ShowGridHeader="True" Height="300" runat="server"   ShowBorder="true"
             ShowHeader="True"   AutoPostBack="True"
             EnableRowDoubleClick="True" OnRowDoubleClick="Grid1_RowClick">
           <Columns>

           <ext:BoundField DataField="编号" SortField="编号" HeaderText="编号" Width="100px" ColumnID="编号" />
          </Columns></ext:Grid>

          <ext:Grid ID="Grid2" Title="Grid2"  ShowGridHeader="True" runat="server" Height="300"   AutoPostBack="True" ShowBorder="true" ShowHeader="true" >
           <Columns>
              <ext:BoundField DataField="编号" SortField="编号" HeaderText="编号" Width="100px" ColumnID="编号"/>
           </Columns> </ext:Grid>
    </Items>  </extanel>   
    </form>
</body>
后台:
protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                DataTable dt;
                dt = new DataTable("Table_AX");
                dt.Columns.Add("编号");
                DataRow dr;
                dr = dt.NewRow();
                dr["编号"] = "aa";
                dt.Rows.Add(dr);
                              
                Grid2.DataSource = dt;
                Grid2.DataBind();
                Grid1.DataSource = dt;
                Grid1.DataBind();
            }

        }

        protected void Grid1_RowClick(object sender, FineUI.GridRowClickEventArgs e)
        {
            DataTable dt;
            dt = new DataTable("Table_AX");
            dt.Columns.Add("编号");
            DataRow dr;
            dr = dt.NewRow();
            dr["编号"] = "kkk";
            dt.Rows.Add(dr);

            Grid1.DataSource = dt;
            Grid1.DataBind();
            Grid2.DataSource = dt;
            Grid2.DataBind();
        }
地板
发表于 2014-1-3 14:51:40 | 只看该作者
AutoPostBack="True"
要这个做什么?GRID2_ROWCLICK事件绑定前先清掉原来的数据,再绑定.
5#
 楼主| 发表于 2014-1-3 16:07:46 | 只看该作者
甘桂 发表于 2014-1-3 14:51
AutoPostBack="True"
要这个做什么?GRID2_ROWCLICK事件绑定前先清掉原来的数据,再绑定. ...

AutoPostBack="True" 实际的表里,有个用来录入的模板框,需要用到的。去掉也还是不能刷新表2.
发现表grid1去掉AllowSorting="true" ,不使用排序。就可以正常刷新grid2了。
6#
发表于 2014-1-6 11:45:50 | 只看该作者
数据源里没有排序.这里就不要把他打开了.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-27 10:30 , Processed in 0.044667 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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