listview嵌套GridView_react grid layout

listview嵌套GridView_react grid layoutGridView嵌套GridView,对子GridView及父GridView级联删除的问题http://blog.csdn.net/amandag/archive/2007/05/31/1633395.aspx利用GridView显示主细表并添加删除、打开、关闭功能(续)http://dotnet.aspx.cc/article/f73eeaa9-2bdc-47fd-a…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 

GridView嵌套GridView,对子GridView及父GridView级联删除的问题

http://blog.csdn.net/amandag/archive/2007/05/31/1633395.aspx

利用GridView显示主细表并添加删除、打开、关闭功能(续)

http://dotnet.aspx.cc/article/f73eeaa9-2bdc-47fd-afd2-59f2fa4897f5/read.aspx

GridView的主从多级嵌套

http://hi.baidu.com/freezesoul/blog/item/4678e6dd90a0c6eb77c63867.html

<!–
第一层GridView开始
–>

     

<
asp:GridView ID
=

GridView1

   OnRowDataBound
=

GridView1_RowDataBound

   AutoGenerateColumns
=
false
 runat
=

server

>

       

<
Columns
>

         

<
asp:TemplateField
>

         

<
ItemTemplate
>
 
            

<%
#Container.DataItem.ToString()
%>

               

<!–
第二层GridView开始
–>

                

<
asp:GridView ID
=

GridView2

 OnRowDataBound
=

GridView2_RowDataBound

    AutoGenerateColumns
=
false
 runat
=

server

>
          
                  

<
Columns
>

                   

<
asp:TemplateField
>

                   

<
ItemTemplate
>
 
                       

<%
#Container.DataItem.ToString()
%>

                       

<!–
第三层GridView开始
–>

                       

<
asp:GridView ID
=

GridView3

   AutoGenerateColumns
=
false
 runat
=
server
>

                            

<
Columns
>

                              

<
asp:TemplateField
>

                              

<
ItemTemplate
>
 
                               

<%
#Container.DataItem.ToString()
%>

                              

</
ItemTemplate
>

                              

</
asp:TemplateField
>
                    
                            

</
Columns
>

                         

</
asp:GridView
>

                       

<!–
第三层GridView 结束
–>

                       
                    

</
ItemTemplate
>

                   

</
asp:TemplateField
>

                  

</
Columns
>

                 

</
asp:GridView
>

              

<!–
第二层GridView结束
–>

              
           

</
ItemTemplate
>

           

</
asp:TemplateField
>

          

</
Columns
>

         

</
asp:GridView
>

         

<!–
第一层GridView结束
–>

++++++++++.cs代码++++++++++++++++
RowDataBound与1.x中的ItemDataBound也有一腿!

using
 System;

using
 System.Data;

using
 System.Configuration;

using
 System.Web;

using
 System.Web.Security;

using
 System.Web.UI;

using
 System.Web.UI.WebControls;

using
 System.Web.UI.WebControls.WebParts;

using
 System.Web.UI.HtmlControls;

using
 System.Collections;


public
 
partial
 
class
 _Default : System.Web.UI.Page 
{

    

protected
 
void
 Page_Load(
object
 sender, EventArgs e)
     {

        

this
.GridView1.DataSource 
=
 Al(

GridView1Item:

);
        

this
.GridView1.DataBind();
     }

    
//
DataSource


    
protected
 ArrayList Al(
string
 GetStr)
     {

         ArrayList al 

=
 
new
 ArrayList();
        

for
(
int
 i
=
0
;i
<
2
;i
++
)
         {

             al.Add(GetStr

+
i.ToString());
         }

        
return
 al;
     }

    
//
GridView1_RowDataBound


    
protected
 
void
 GridView1_RowDataBound(
object
 sender, GridViewRowEventArgs e)
     {

        

if
 (e.Row.RowType 
==
 DataControlRowType.DataRow)
         {

             GridView gv 

=
 (GridView)e.Row.FindControl(

GridView2

);
             gv.DataSource 

=
 Al(

GridView2Item:

);
             gv.DataBind();
            
         }
     }

    
//
GridView2_RowDataBound


    
protected
 
void
 GridView2_RowDataBound(
object
 sender, GridViewRowEventArgs e)
     {

        

if
 (e.Row.RowType 
==
 DataControlRowType.DataRow)
         {

             GridView gv 

=
 (GridView)e.Row.FindControl(

GridView3

);
             gv.DataSource 

=
 Al(

GridView3Item:

);
             gv.DataBind();

         }
     }
}


//
绑定


    
public
 
void
 bind()
    {

        

string
 sqlstr 
=
 

select * from 表

;
        sqlcon 

=
 
new
 SqlConnection(strCon);
        SqlDataAdapter myda 

=
 
new
 SqlDataAdapter(sqlstr, sqlcon);
        DataSet myds 

=
 
new
 DataSet();
        sqlcon.Open();
        myda.Fill(myds, 




);
        GridView1.DataSource 

=
 myds;
        GridView1.DataKeyNames 

=
 
new
 
string
[] { 

id

 };
//
主键


        GridView1.DataBind();
        sqlcon.Close();
    }


=========================================

我已经通过FindControl找到这个gridview,可是现在的问题是我要给这个gridview里帮定的数据源是个新的,和外面的gridview数据源不是同一个!下面是我的部分代码: 

<
asp:GridView ID
=

GridView1

 runat
=

server

 AutoGenerateColumns
=

False

 OnRowDataBound
=

GridView1_RowDataBound

>
 
   

<
Columns
>
 
     

<
asp:BoundField DataField
=

type

 HeaderText
=

type

 
/>
 
       

<
asp:TemplateField
>
 
         

<
ItemTemplate
>
 
           

<
asp:GridView ID
=

GridView2

 runat
=

server

 AutoGenerateColumns
=

False

 EnableViewState
=

False

>
 
             

<
Columns
>
 
                

<
asp:BoundField DataField
=

pub_id

 HeaderText
=

pub_id

 
/>
 
             

</
Columns
>
 
           

</
asp:GridView
>
 
         

</
ItemTemplate
>
 
       

</
asp:TemplateField
>
 
    

</
Columns
>
 

</
asp:GridView
>
 

     
protected
 
void
 GridView1_RowDataBound(
object
 sender, GridViewRowEventArgs e) 
     { 
         

if
 (e.Row.RowType 
==
 DataControlRowType.DataRow) 
         { 
             e.Row.Cells[

1
].FindControl(

GridView2

); 
         } 
     } 

可是在FindControl(“GridView2”)后只有一个DataBind()方法,并没有DataSource这个属性,要怎样才能给里面的那个GridView2指定一个新的数据源呢?

——————————————————–

GridView GRTemp=(GridView)e.Row.Cells[1].FindControl(“GridView2”);
GRTemp.DataSource=你的source;
GRTemp.DataBind();

========================================================================================

Repeater嵌套:

=======================================================================================

//
在绑定分类品名时,绑定分类下的产品 


private
 
void
 rptCategories_ItemDataBound(
object
 sender, System.Web.UI.WebControls.RepeaterItemEventArgs e) 

    BLL.Products products 

=
new
 BLL.Products(); 
    

if
 (e.Item.ItemType 
==
 ListItemType.Item 
||
    e.Item.ItemType 
==
 ListItemType.AlternatingItem)  
    { 
        Repeater rptProduct 

=
 (Repeater) e.Item.FindControl(

rptProduct

); 
        

//
找到分类Repeater关联的数据项 


        DataRowView rowv 
=
 (DataRowView)e.Item.DataItem; 
        

//
提取分类ID 


        
int
 CategorieId 
=
 Convert.ToInt32(rowv[

ID

]); 
        

//
根据分类ID查询该分类下的产品,并绑定产品Repeater 


        rptProduct.DataSource 
=
 products.GetProductsByCategorieId(CategorieId); 
        rptProduct.DataBind(); 
    } 

=========================================================================================

gridView嵌套:

========================================================================================

 
protected
 
void
 gvUserList_RowDataBound(
object
 sender, GridViewRowEventArgs e)
    {

        

if
 (e.Row.RowType 
==
 DataControlRowType.DataRow)

        {

            DataRowView rowv 
=
 (DataRowView)e.Row.DataItem;
          
            Label lblCareer 

=
 (Label)e.Row.FindControl(

lblCareer

);
            

string
 tmp_myCareer 
=
 rowv[

mycareer

].ToString().Trim();
           

          }
     }

 

转载于:https://www.cnblogs.com/qiantuwuliang/archive/2009/08/17/1548066.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/184805.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • nchar,char,varchar与nvarchar区别「建议收藏」

    nchar,char,varchar与nvarchar区别「建议收藏」nchar,char,varchar与nvarchar区别

  • Task2 计算电梯运行时间线程

    Task2 计算电梯运行时间线程Task2 计算电梯运行时间线程

  • fonttools 使用教程[通俗易懂]

    fonttools 使用教程[通俗易懂]2019独角兽企业重金招聘Python工程师标准>>>…

  • 在Ubuntu16.04 安装RabbitVCS[通俗易懂]

    在Ubuntu16.04 安装RabbitVCS[通俗易懂]系统:Ubuntu16.041、添加源将rabbitvcs的添加到源里面。(首次操作会提示是否要添加到源里面,点击ENTER添加,Ctrl+C不添加),这里选择ENTER方便更新。sudoadd-apt-repositoryppa:rabbitvcs/ppa2、导入key如果第一步出现已经导入key的提示,此步骤可以省略sudoapt-keyadv–keyserverkeyserver.ubuntu.com–recv-keys34EF4A..

  • netdata mysql_Netdata介绍及安装部署

    netdata mysql_Netdata介绍及安装部署Netdata是一款Linux性能实时监测工具。Netdata是Linux系统实时性能监测工具,提供web界面的界面视角。它用可视化的手段,将被监测者最细微的细节,展现了出来。这样,你便可以清晰地了解你的系统和应用程序此时的状况。优美的界面:bootstrap框架下的控制界面自定义的控制界面:你可以使用简单的HTML代码去自定义控制界面(不需要使用javascript)极其的快速而高效:程序…

    2022年10月28日
  • windows10 记事本进程 键盘消息钩子 dll注入

    windows10 记事本进程 键盘消息钩子 dll注入看了很多文档,垮了很多坎,终于完成了这个demo;有很多个人理解,可能不完全正确,见谅;先上实现的图片:如图,我通过SetWindowsHookEx()函数向记事本进程中当前窗口线程注入了自己写的dll,dll中设置的回调函数使,当键盘按了1,那么就会触发一个MessageBox。工具:VS2015,PCHunter(用于查看是否成功注入了dll,其实看能否实现功能就信…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号