none
FormView显示问题 RRS feed

  • 问题

  • 页面有一个Div(这是最外层的),有样式,代码如下:
    .div
    {
      position: absolute;
     left: 0px;
     top: 0px;
     z-index: 1;
    }

    在这个层里有一个UltraWebGrid控件和一个FormView控件。点击UltraWebGrid控件里的一行记录,会弹出FormView,然后在FormView里点击编辑,希望能进入FormView的EditItemTemplate模板。但奇怪的问题是点击编辑后FormView就消失了!控件UltraWebGrid和FormView都各自套一个Div。

    请教各位:这是为什么?我百思不解。


    zy
    2009年3月16日 8:42

答案

  • 楼主,你好

    关于第三方控件的问题如果你在该论坛无法得到解决,你最好到第三方控件官网或论坛提问。
    下面是NetAdvantage关于Grid控件类的讨论论坛,你可以试试




    Microsoft Online Community Support
    2009年3月18日 8:26

全部回复

  • 你先检查一下是被覆盖了还是隐藏了,还是压根就没有生成出来EditItemTemplate的内容
    孟宪会
    2009年3月16日 9:01
    版主
  • To:孟宪会:谢谢这么快的回复。我检查过了,所有的控件都是都没有设置Visable属性,所以都是默认值。属于FormView的Div的z-index我已设置为99999999。如果我设置FormView的起始模板是EditItemTemplate,那么也能正常显示。所以才觉得奇怪。

    希望您能指点下我,看看还有什么地方漏了。下面的代码是UltraWebGrid选中行改变事件的代码。里面就是给FormView加载数据的。

    #region 行选择改变事件
        protected void uwgLight_SelectedRowsChange(object sender, Infragistics.WebUI.UltraWebGrid.SelectedRowsEventArgs e)
        {
            string id = e.SelectedRows[0].Cells[0].Text;  //获取选中行的信息的ID

            if(this.fvLightShelf.CurrentMode != FormViewMode.ReadOnly)
            {
                this.fvLightShelf.ChangeMode(FormViewMode.ReadOnly);
            }

            this.odsAddModify.SelectParameters[0].DefaultValue = id;
            this.fvLightShelf.DataBind();
        }
        #endregion


    zy
    2009年3月16日 9:10
  • 因为涉及的东西比较多,无法调试你的代码。你可以先去掉
    position: absolute;
     left: 0px;
     top: 0px;
     z-index: 1;

    的定义试试。

    孟宪会
    2009年3月16日 9:38
    版主
  • To:孟宪会:谢谢这么快的回复。您说的下面
    .div
    {
      position: absolute;
     left: 0px;
     top: 0px;
     z-index: 1;
    }
    这个定义我已去掉试过,没有效果。页面代码如下:
    <body>
        <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <div>
                    <div style="padding: 2px 2px 2px 2px; width: 100%">
                        <igtbl:UltraWebGrid ID="uwgLight" runat="server" Height="100%" Width="100%" OnDataBinding="uwgLight_DataBinding" OnSelectedRowsChange="uwgLight_SelectedRowsChange">
                            ......
                        </igtbl:UltraWebGrid>
                    </div>
                    <div style="z-index: 99999; border: solid 1px #dcdcdc; padding: 5px">
                        <asp:FormView ID="fvLightShelf" runat="server" DataSourceID="odsAddModify">
                            ......
                        </asp:FormView>
                        <asp:ObjectDataSource ID="odsAddModify" runat="server" SelectMethod="GetSingle" TypeName="Bussiness.Class_LightShelf" DataObjectTypeName="Bussiness.Class_LightShelf" InsertMethod="AddLightShelf" UpdateMethod="ModifyLightShelf" >
                            ......
                        </asp:ObjectDataSource>
                    </div>
                </div>
        </form>
    </body>

    请您再看下页面代码上有什么问题不。谢谢先。
    zy
    2009年3月16日 13:20
  • 看不出有什么问题,你使用的是第三方控件,你可以先去掉试试,因为第三方控件只有你那里有
    孟宪会
    2009年3月17日 5:24
    版主
  • To:孟宪会:谢谢回复。我做了如下测试:
    1、在页面放一个UltraWebGrid,一个FormView,一个ObjectDataSource。FormView的数据源是ObjectDataSource。当我点击FormView自带的编辑按钮时,FormView会消失。
    2、在页面放一个UltraWebGrid,一个FormView,一个ObjectDataSource,两个UpdataPanel。一个UpdataPanel放UltraWebGrid,另一个UpdataPanel放FormView和ObjectDataSource。点击FormView自带的编辑按钮时,FormView不消失。
    3、还是第二个页面,只不过UltraWebGrid没有放在UpdataPanel。还是同样的操作,FormView不消失。
    zy
    2009年3月17日 6:29
  • 楼主,你好

    关于第三方控件的问题如果你在该论坛无法得到解决,你最好到第三方控件官网或论坛提问。
    下面是NetAdvantage关于Grid控件类的讨论论坛,你可以试试




    Microsoft Online Community Support
    2009年3月18日 8:26