zoukankan      html  css  js  c++  java
  • 在ListView中使用DropDownList绑定数据……好麻烦

    在Aspx页中的代码:

    <EditItemTemplate>
        
    <asp:DropDownList ID="DropDownList1" runat="server">
            
    <asp:ListItem Value=""></asp:ListItem>
            
    <asp:ListItem Value=""></asp:ListItem>
        
    </asp:DropDownList>
    </EditItemTemplate>

     添加事件:ItemUpdating和ItemCreated事件

     protected void ListView1_ItemUpdating(object sender, ListViewUpdateEventArgs e)
            {
                
    //在更新之前绑定DropDownList
                DropDownList ddGender = (DropDownList)ListView1.Items[e.ItemIndex].FindControl("DropDownList1");
                e.NewValues[
    "Gender"= ddGender.SelectedValue;
            }
    protected void ListView1_ItemCreated(object sender, ListViewItemEventArgs e)
            {
                
    if (e.Item.ItemType == ListViewItemType.DataItem)
                {
                    DropDownList ddlGender 
    = (DropDownList)e.Item.FindControl("DropDownList1");
                    
    if (ddlGender != null)
                    {
                        ListViewDataItem lvDataItem 
    = (ListViewDataItem)e.Item;
                        DataRowView rowView 
    = (DataRowView)lvDataItem.DataItem;
                        
    if (rowView != null)
                        {
                            var userRow 
    = (DataSetUsers.UsersRow)rowView.Row;
                            ddlGender.SelectedValue 
    = userRow.Gender;
                        }
                    }
                }
            }
     protected void ListView1_ItemDataBound(object sender, ListViewItemEventArgs e)
            {
                
    if (e.Item.ItemType == ListViewItemType.DataItem)
                {
                    DropDownList ddlLinkType 
    = (DropDownList)e.Item.FindControl("DropDownList1");
                    ListViewDataItem lvDataItem 
    = (ListViewDataItem)e.Item;
                    DataRowView rowView 
    = (DataRowView)lvDataItem.DataItem;
                    
    if (ddlLinkType != null && rowView != null)
                    {
                        var linksRow 
    = (DAL.DataSetLinks.T_LinksRow)rowView.Row;
                        ddlLinkType.SelectedValue 
    = linksRow.LinkType;
                    }
                }
            }

            
    protected void ListView1_ItemInserting(object sender, ListViewInsertEventArgs e)
            {
                DropDownList ddlLinkType 
    = (DropDownList)e.Item.FindControl("DropDownList1");
                e.Values[
    "LinkType"= ddlLinkType.SelectedValue;
            }

            
    protected void ListView1_ItemUpdating(object sender, ListViewUpdateEventArgs e)
            {
                DropDownList ddlLinkType 
    = (DropDownList)ListView1.Items[e.ItemIndex].FindControl("DropDownList1");
                e.NewValues[
    "LinkType"= ddlLinkType.SelectedValue;
            }
        }
  • 相关阅读:
    python unittest--TestSuit类--通过unittest.TestSuite()类直接构建,或者通过TestSuite实例的addTests、addTest方法构建
    Cannot read property 'toLowerCase' of undefined
    Vue 中登录功能的简单实现
    git 常用命令
    js 锚点定位的简单方法
    Vue element-ui 使用Loading服务按需引入的坑
    防抖 节流
    element-ui 日期选择器-开始结束日期选择限制
    vue elment-ui 对navTab导航组件封装
    vue 监听窗口变化对页面部分元素重新渲染
  • 原文地址:https://www.cnblogs.com/zhuiyi/p/2042784.html
Copyright © 2011-2022 走看看