requiredargsconstructor_gridview控件的事件有哪些

requiredargsconstructor_gridview控件的事件有哪些1ItemDataBound:数据绑定的时候(正在进行时)发生。2ItemCommand:用来响应Item模板中的控件的事件。如下代码aspx代码:[html]viewplaincopy<asp:RepeaterID=”Repeater1″runat=”server”DataSourceID=”LinqDataSource1…

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

Jetbrains全系列IDE稳定放心使用

 

1   ItemDataBound:数据绑定的时候(正在进行时)发生。

2   ItemCommand :用来响应Item模板中的控件的事件。

如下代码

aspx代码:
[html] view plain copy
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="LinqDataSource1"   
        onitemcommand="Repeater1_ItemCommand"   
        onitemdatabound="Repeater1_ItemDataBound">  
    <ItemTemplate>  
    <span runat="server" id="span">  
    --------------------<asp:Button ID="addButon" CommandName="addButton" CommandArgument='<%#Eval("part_code") %>' runat="server" Text="库存+1" />-------------------<%#Eval("part_code") %>---------------<%#Eval("stock_num") %><br/><br/>  
    </span>  
    </ItemTemplate>  
    </asp:Repeater>  

cs代码:
[csharp] view plain copy
//响应Item模板中控件的事件---------点击按钮,库存+1  
       protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)  
       {  
           if (e.CommandName == "addButton")//判断这个Item里哪个控件响应的这个事件  
           {  
               string part_code = (string)e.CommandArgument;//获取Item传过来的参数  
  
               //下面是通过Linq修改数据(即:使库存+1)  
               DataClasses1DataContext dc = new DataClasses1DataContext();  
               var rs = dc.tbl_stock_dtl.Select(r => r).Where(r => r.part_code == part_code);  
               if (rs.Count() > 0)  
               {  
                   foreach (tbl_stock_dtl t in rs)  
                   {  
                       t.stock_num += 1;  
                   }  
               }  
               dc.SubmitChanges();  
               Repeater1.DataBind();//强行刷新数据,就是说,库存+1后,立马显示新的数据。  
  
           }  
       }  
  
       //当浏览器显示一条记录的时候,响应的事件---------库存为零的背景变红  
       protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)  
       {  
           //判断Item的类型,因为Item有好几种:footer ,header ,Item....  
           if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)  
           {  
               //把ItemData转换为对应的类对象  
               tbl_stock_dtl tsd = (tbl_stock_dtl)e.Item.DataItem;  
               if (tsd.stock_num == 0)  
               {  
                   //找到对应的控件,因为span是html的,所以,要加上runat=“server”  
                   HtmlGenericControl hgc = (HtmlGenericControl)e.Item.FindControl("span");  
  
                   //为span动态添加一个属性:style,该属性的值为:background-color:red  
                   hgc.Attributes.Add("style", "background-color:red");  
               }  
           }  
       }  

自己写的 

前台:

  <asp:Repeater ID="rp_Item" runat="server" OnItemDataBound="rp_ItemDataBound">
                        <ItemTemplate>
                            <tr ondblclick="RowDbClick('');">
                                <td style="width: 3%; text-align: center;">
                                    <input type="checkbox" value="<%#Eval("Id")%>" name="checkbox" /></td>
                                <td style="text-align: center; width: 5%"><%=this.code++%></td>
                                <td style="width: 10%; text-align: center;"><%#Eval("Title") %></td>
                                <td style="width: 8%; text-align: center;"><%#Eval("AddUserName") %></td>
                                <td style="width: 20%; text-align: center;"><%#Eval("Remark") %></td>
                                <td style="width: 10%; text-align: center;">
                                    <%#Eval("AddTime")%>
                                </td>
                                <td style="width: 8%; text-align: center;"><%# GetStatusNameByStatus(Eval("Status").ToString()) %></td>
                                <td style="text-align: center; width: 8%;">
                                    <a href="SpecialRectificationCheck_Detail.aspx?key=<%#Eval("Id")%>" target="_blank" οnclick="GetId(this)" class="details" id="<%#Eval("Id")%>">详情<img id="attachFlag" runat="server" style="width:12px;height:12px;display:none" src="../../Themes/Images/32/239.png"/></a>
                                </td>
                            </tr>
                        </ItemTemplate>


                        <FooterTemplate>
                            <% if (rp_Item != null)
                                {
                                    if (rp_Item.Items.Count == 0)
                                    {
                                        Response.Write("<tr><td colspan='8' style='color:red;text-align:center'>没有找到您要的相关数据!</td></tr>");
                                    }
                                } %>
                        </FooterTemplate>
                    </asp:Repeater>

后台 :

 protected void rp_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                DataRowView drv=(DataRowView)e.Item.DataItem;
                string id = Convert.ToString(drv["Id"]);

                DataTable dtAttach = _keyWorkDao.GetAttachmentByKey(id);
                if(dtAttach!=null&&dtAttach.Rows.Count>0)
                {
                    HtmlImage aAttachFlag = ((HtmlImage)e.Item.FindControl("attachFlag"));
                    aAttachFlag.Style["display"] = "normal";
                }
            }
        }

前台 2:

 <table class="grid tb-list-box" align="center" border="0" cellpadding="0" cellspacing="0">
                            <thead>
                                <tr>
                                    <th style="width: 5%">序号</th>
                                    <th style="width: 10%; text-align: center;">添加人
                                    </th>
                                    <th style="width: 10%; text-align: center;">上传时间
                                    </th>
                                    <th style="width:auto; text-align: center;">附件
                                    </th>
                                </tr>
                            </thead>
                            <asp:Repeater ID="RptAttach" runat="server" OnItemDataBound="rp_ItemDataBound">
                                <ItemTemplate>
                                    <tr>
                                        <td style="width: 5%; text-align: center;"><%=CodeListForAttach++ %></td>
                                        <td style="width: 10%; text-align: center;" runat="server" id="addUserName"><%#Eval("AddUserName")%></td>
                                        <td style="width: 20%; text-align: center;"><%#Eval("AddTime")%></td>
                                        <td style="width: auto; text-align: center; text-align:left" runat="server" id="fileNames"></td>
                                    </tr>
                                </ItemTemplate>
                            </asp:Repeater>
                        </table>

 

后台 2:

 protected void rp_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Object o = e.Item.DataItem;
                Type t = o.GetType();
                System.Reflection.PropertyInfo pAddUserName = t.GetProperty("AddUserName", typeof(System.String));
                System.Reflection.PropertyInfo pAddTime = t.GetProperty("AddTime", typeof(System.DateTime));

                string addUserName =Convert.ToString( pAddUserName.GetValue(o));
                DataRow[] drs=dtAttach.Select(string.Format( "ADDUSERNAME='{0}'",addUserName));
                string template = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class=\"downLoad\" style=\"color: blue\" target=\"_blank\" href=\"/Ajax/UpLoadFile_Ajax.ashx?Method=DownLoad&fileName={0}&filePath={1}\">{0}</a>";
                StringBuilder sbAttachInfo = new StringBuilder();
                foreach (DataRow dr in drs)
                {
                    sbAttachInfo.AppendFormat(template, Convert.ToString(dr["FileName"]), Convert.ToString(dr["filePath"]));
                }                                
                HtmlTableCell htcFileNames = ((HtmlTableCell)e.Item.FindControl("fileNames"));
                htcFileNames.InnerHtml = sbAttachInfo.ToString();
            }
        }

 

转载于:https://www.cnblogs.com/ChineseMoonGod/p/6899092.html

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

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

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

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

(0)


相关推荐

  • Coreseek:部门查询和增量索引代替实时索引

    Coreseek:部门查询和增量索引代替实时索引

    2021年12月31日
  • 动态规划之01背包问题(最易理解的讲解)[通俗易懂]

    动态规划之01背包问题(最易理解的讲解)[通俗易懂]01背包问题,是用来介绍动态规划算法最经典的例子,网上关于01背包问题的讲解也很多,我写这篇文章力争做到用最简单的方式,最少的公式把01背包问题讲解透彻。01背包的状态转换方程 f[i,j]=Max{f[i-1,j-Wi]+Pi(j>=Wi), f[i-1,j]}f[i,j]表示在前i件物品中选择若干件放在承重为j的背包中,可以取得的最大价值。Pi表示第i件物

  • 一文搞懂什么是粒子群优化算法(Particle Swarm Optimization,PSO)【附应用举例】「建议收藏」

    一文搞懂什么是粒子群优化算法(Particle Swarm Optimization,PSO)【附应用举例】「建议收藏」粒子群优化算法1.1粒子群优化算法简介粒子群优化算法(ParticleSwarmOptimization,PSO)是进化计算的一个分支,是一种模拟自然界的生物活动的随机搜索算法。PSO模拟了自然界鸟群捕食和鱼群捕食的过程。通过群体中的协作寻找到问题的全局最优解。它是1995年由美国学者Eberhart和Kennedy提出的,现在已经广泛应用于各种工程领域的优化问题之中。1.1.1思想来源从动物界中的鸟群、兽群和鱼群等的迁移等群体活动而来。在群体活动中,群体中的每一个个体都会受益于所有成员在

    2022年10月11日
  • C++实现超分辨率 RDN

    C++实现超分辨率 RDNRDN(由残差密集网络实现的图像超分辨率)在《RDN-TensorFlow-master》有一个3倍模型(也只有这一个了):rdn_5_3_64_x3这里用C++实现这个的3倍重建:流程图:密集残差块:这个残差块结构内部和前面的ESRGAN(前面的文章)中的密集残差块是一样的,只是外部有点不同。定义密集残差块:struct密集残差块//4个卷积层…

  • 遇到问题–k8s–pod的状态为evicted

    遇到问题–k8s–pod的状态为evicted转载请注明出处:遇到问题–k8s–pod的状态为evicted遇到问题使用kubectlgetpods发现很多pod的状态为evicted。原因eviction,即驱赶的意思,意思是当节点出现异常时,kubernetes将有相应的机制驱赶该节点上的Pod。多见于资源不足时导致的驱赶。更多详情参考kubernetes的eviction机制解决方案排查资源和异常原因,防止新…

  • vim编辑页面怎么退出_如何退出Vim编辑器?[通俗易懂]

    vim编辑页面怎么退出_如何退出Vim编辑器?[通俗易懂]皈依舞在输入命令之前,击中ESC钥匙..进入后,按下回归来确认。ESC完成当前命令并将Vim切换到正常模式..如果你按下:,:将出现在底部屏幕上。这证实了您实际上是在输入命令而不是编辑文件。大多数命令都有缩略语,可选部分括在括号中:c[ommand].标记为‘*’的命令仅为Vim(未在Vi中实现)。安全-退出(如果有未保存的更改,则失败)::q[uit]退出电流窗户..如果这是最后一个窗口就退出V…

发表回复

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

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