ASP.NET笔记之 ListView 与 DropDownList的使用(解决杨中科视频中的问题)
1、Repeater用来显示数据、ListView用来操作数据
InsertItemTemplate和updateItemTemplate
**Eval(显示数据)和Bind(双向绑定:不仅是需要展现,更需要把数据绑定到数据库中)
ItemPlaceholderID:占位符,决定占位,把头部(之上)和尾部(之下)分隔开
ItemTemplate:展示功能
自动生成的ListView需要调整的地方
(1、生成的样式要提到style中,不要用内联的方式
(2、ItemTemplate里面一半没必要用<asp:Label>展示只读数据,所以可以直接输出
<%#Eval("id")%>
(3、LayoutTemplate中必须有一个ItempPlaceholderID 的服务端控件
(4、LayoutTemplate中表头的位置要汉化,所有template中的不需显示的字段需删除或更改位置
2、事件
流程同Repeater:
//首先判断数据行的类型
e.Item.ItemType==ListViewItemType.DataItem
//把e.Item转化成ListViewDataItem才能拿到DataItem
ListViewDataItem lvDataItem=(ListViewDataItem)e.Item;
DataRowView rowView=(DataRowView)lvDataItem.DataItem;
//获得某一列
var xRow=(...DAL.DataSet1.T_UserRow)rowVIew.Row;
//获得某一列的值
xRow.Age、xRow.sName...etc.
3、具体注意
(1、设定相应的按钮、控件、Validator为童颜的ValidationGroup,
防止不同模板中的Validator互相干扰,
(2、将Cancel按钮中的CausesValidation="false"使得插入修改数据时
可以取消操作,这样即使在同一个分组内也可以不互相影响
4、给InsertItemplate增加默认值
//在ItemCreate属性中进入函数
if(e.Item.ItemType==ListViewItemType.InsertItem){
TextBox AgeText=(TextBox)e.Item.FindControl("AgeID");
AgeText.Text="20";
}
5、主键Guid:插入到数据库
(1、ListView的ItemInserting属性:
//要插入到数据库之前的数据的键值对
e.values["id"]=Guid.NewGuid();
(2、ListView的ItemUpdateing属性:
e.ItemIdex
e.OldValues//更新前的值
e.NewValues["Age"]//更新后的值
e.Cancel=true;//取消非法数据插入
ObjectDataSource
绑定id为guid 类型的时候
6、DropDrownList
(1、
//包含在DropDrownList中的项
<asp:ListItem value="man">男</asp:ListItem>
(2、
**后台代码:更新的时候
//找到ListView
//ListView1.Item[e.ItemIndex].FindControl("ID");
//它是一个DropViewList
DropDrownList d=(DropDrownList)listView1.Item[e.ItemIndex].FindControl("ID");
//赋值
e.NewValues=["字段"]=d.SelectedValue;
(3、
**后台代码:实现编辑时显示原先的数据
//有数据行
if(e.Item.ItemType==ListVIewDataList.DataItem){
//取控件
DropDownList d=(DropDownLIst)e.Item.FindControl("ID");
if(d!=null){
//取到这一行绑定的数据
ListViewDataItem lv=(ListViewDataItem)e.Item;
DataRowItem row=(dataRowItem)lv.DataItem;
//如果这一行有数据
if(row!=null){
//读取数据库该Row的值
var myRow=(项目名称.DAL.DataSetUsers.T_Users)row.Row;
//将读取打偶的Row值设置为下拉菜单中的选项
d.SelectedValue=myRow.字段;
}
}
}
(4、 可以看不可以用 Enabled="false
友情链接管理:
效果:
aaarticlea/png;base64,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" alt="" />
存在问题总结:
(1、警告 1 元素“ListView”不是已知元素。原因可能是网站中存在编译错误,或者缺少 web.config 文件。 E:\code\Projects\WebSite_zzl01\友情链接\LinkUrl_Admin.aspx 39 10 友情链接
(2、onLinkTypeChange(this,'" + logoID.ClientID + "') 中传给前台javascript的ID不是客户端的ID,会导致显示和隐藏的功能无法实现,所以增加一个myID
: logoID.Attributes["myid"] = logoID.ClientID; 来传递参数
LinkUrl_Admin.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using ListView.DAL.DataSetLinksTableAdapters; namespace ListView
{
public partial class LinksMer : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ } protected void ListView1_ItemDataBound(object sender, ListViewItemEventArgs e)
{
if(e.Item.ItemType== ListViewItemType.DataItem)
{
//ListViewItem lvi = (ListViewItem)e.Item.DataItem;
DataRowView drv = (DataRowView)e.Item.DataItem;
if(drv!=null)
{
var ll=(ListView.DAL.DataSetLinks.T_LinksRow)drv.Row;
DropDownList DropDownList1 = (DropDownList)e.Item.FindControl("DropDownList1");
DropDownList1.SelectedValue = ll.LinkType.ToString();
}
} } protected void ListView1_ItemInserting(object sender, ListViewInsertEventArgs e)
{
DropDownList DropDownList1 = (DropDownList)e.Item.FindControl("DropDownList1");
e.Values["LinkType"] = DropDownList1.SelectedValue;
DataRowView drv = (DataRowView)e.Item.DataItem;
} protected void ListView1_ItemUpdating(object sender, ListViewUpdateEventArgs e)
{
DropDownList DropDownList1 = (DropDownList)ListView1.Items[e.ItemIndex].FindControl("DropDownList1");
e.NewValues["LinkType"]= DropDownList1.SelectedValue;
} protected void ListView1_ItemCreated(object sender, ListViewItemEventArgs e)
{
//对于Insert、Item界面的初始化在ItemCreated比在ItemDataBound更好
if (e.Item.ItemType == ListViewItemType.DataItem || e.Item.ItemType == ListViewItemType.InsertItem)
{
DropDownList DropDownList1 = (DropDownList)e.Item.FindControl("DropDownList1");
TextBox LogoURLTextBox = (TextBox)e.Item.FindControl("LogoURLTextBox");
if (DropDownList1 != null&&LogoURLTextBox!=null)
{
LogoURLTextBox.Attributes["myid"] = LogoURLTextBox.ClientID;
DropDownList1.Attributes["onchange"] = "onLinkTypeChange(this,'" + LogoURLTextBox.ClientID + "')";
if (DropDownList1.SelectedValue == "Text")
{
//LogoURLTextBox.Visible = false;
LogoURLTextBox.Style["display"] = "none";
}
}
}
}
}
}
LinkUrl_Admin.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LinksMer.aspx.cs" Inherits="ListView.LinksMer" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
function onLinkTypeChange(src,logoTextId) {
if($(src).val()=="Text") {
$("input:text[myid=" + logoTextId+"]").hide();
// alert(logotextid);获取控件失败,待处理
//alert("input:text[myid=" + logoTextId + "]");
}
else {
$("input:text[myid=" + logoTextId + "]").show();
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div> <asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
DeleteMethod="Delete" InsertMethod="Insert"
OldValuesParameterFormatString="original_{0}" SelectMethod="GetData"
TypeName="ListView.DAL.DataSetLinksTableAdapters.T_LinksTableAdapter"
UpdateMethod="Update">
<DeleteParameters>
<asp:Parameter Name="Original_Id" Type="Int64" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="SeqNo" Type="Int32" />
<asp:Parameter Name="SiteName" Type="String" />
<asp:Parameter Name="LinkType" Type="String" />
<asp:Parameter Name="SiteURL" Type="String" />
<asp:Parameter Name="LogoURL" Type="String" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="SeqNo" Type="Int32" />
<asp:Parameter Name="SiteName" Type="String" />
<asp:Parameter Name="LinkType" Type="String" />
<asp:Parameter Name="SiteURL" Type="String" />
<asp:Parameter Name="LogoURL" Type="String" />
<asp:Parameter Name="Original_Id" Type="Int64" />
</UpdateParameters>
</asp:ObjectDataSource>
<asp:ListView ID="ListView1" runat="server" DataKeyNames="Id"
DataSourceID="ObjectDataSource1" InsertItemPosition="LastItem"
onitemdatabound="ListView1_ItemDataBound"
oniteminserting="ListView1_ItemInserting"
onitemupdating="ListView1_ItemUpdating"
onitemcreated="ListView1_ItemCreated">
<EditItemTemplate>
<tr style="">
<td>
<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="更新" />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="取消" />
</td>
<td>
<asp:TextBox ID="SeqNoTextBox" runat="server" Text='<%# Bind("SeqNo") %>' />
</td>
<td>
<asp:TextBox ID="SiteNameTextBox" runat="server"
Text='<%# Bind("SiteName") %>' />
</td>
<td>
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem Value="Text">文本</asp:ListItem>
<asp:ListItem Value="Pic">图片</asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:TextBox ID="SiteURLTextBox" runat="server" Text='<%# Bind("SiteURL") %>' />
</td>
<td>
<asp:TextBox ID="LogoURLTextBox" runat="server" Text='<%# Bind("LogoURL") %>' />
</td>
</tr>
</EditItemTemplate>
<EmptyDataTemplate>
<table runat="server" style="">
<tr>
<td>
未返回数据。</td>
</tr>
</table>
</EmptyDataTemplate>
<InsertItemTemplate>
<tr style="">
<td>
<asp:Button ID="InsertButton" runat="server" ValidationGroup="insert" CommandName="Insert" Text="插入" />
<asp:Button ID="CancelButton" runat="server" ValidationGroup="insert" CommandName="Cancel" Text="清除" />
</td>
<td>
<asp:TextBox ID="SeqNoTextBox" runat="server" ValidationGroup="insert" Text='<%# Bind("SeqNo") %>' />
<asp:RequiredFieldValidator
ID="RequiredFieldValidator1" runat="server" ValidationGroup="insert" ErrorMessage="*" ControlToValidate="SeqNoTextBox" Display="Dynamic"></asp:RequiredFieldValidator>
<asp:CompareValidator
ID="CompareValidator1" runat="server" ValidationGroup="insert" ErrorMessage="必须为整数" ControlToValidate="SeqNoTextBox" Type="Integer" Operator="DataTypeCheck" Display="Dynamic"></asp:CompareValidator>
</td>
<td>
<asp:TextBox ID="SiteNameTextBox" runat="server" ValidationGroup="insert" MaxLength="50"
Text='<%# Bind("SiteName") %>' />
<asp:RequiredFieldValidator ID="RequiredFieldValidator2"
runat="server" ValidationGroup="insert" ErrorMessage="*" ControlToValidate="SiteNameTextBox"></asp:RequiredFieldValidator>
</td>
<td>
<asp:DropDownList ID="DropDownList1" ValidationGroup="insert" runat="server" AutoPostBack="False">
<asp:ListItem Value="Text">文本</asp:ListItem>
<asp:ListItem Value="Pic">图片</asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:TextBox ID="SiteURLTextBox" ValidationGroup="insert" runat="server" Text='<%# Bind("SiteURL") %>' /><asp:RequiredFieldValidator
ID="RequiredFieldValidator3" ValidationGroup="insert" runat="server" ErrorMessage="*" ControlToValidate="SiteURLTextBox"></asp:RequiredFieldValidator>
</td>
<td>
<asp:TextBox ID="LogoURLTextBox" ValidationGroup="insert" runat="server" Text='<%# Bind("LogoURL") %>' />
</td>
</tr>
</InsertItemTemplate>
<ItemTemplate>
<tr style="">
<td>
<asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />
<asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />
</td>
<td>
<asp:Label ID="SeqNoLabel" runat="server" Text='<%# Eval("SeqNo") %>' />
</td>
<td>
<asp:Label ID="SiteNameLabel" runat="server" Text='<%# Eval("SiteName") %>' />
</td>
<td>
<asp:DropDownList ID="DropDownList1" runat="server" Enabled="false">
<asp:ListItem Value="Text">文本</asp:ListItem>
<asp:ListItem Value="Pic">图片</asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:Label ID="SiteURLLabel" runat="server" Text='<%# Eval("SiteURL") %>' />
</td>
<td>
<asp:Label ID="LogoURLLabel" runat="server" Text='<%# Eval("LogoURL") %>' />
</td>
</tr>
</ItemTemplate>
<LayoutTemplate>
<table runat="server">
<tr runat="server">
<td runat="server">
<table ID="itemPlaceholderContainer" runat="server" border="0" style="">
<tr runat="server" style="">
<th runat="server">
</th>
<th runat="server">
序号</th>
<th runat="server">
网站名</th>
<th runat="server">
类型</th>
<th runat="server">
连接地址</th>
<th runat="server">
Logo地址</th>
</tr>
<tr ID="itemPlaceholder" runat="server">
</tr>
</table>
</td>
</tr>
<tr runat="server">
<td runat="server" style="">
</td>
</tr>
</table>
</LayoutTemplate>
</asp:ListView> </div>
</form>
</body>
</html>
ASP.NET笔记之 ListView 与 DropDownList的使用(解决杨中科视频中的问题)的更多相关文章
- 《ASP.NET1200例》ListView 控件与DataPager控件的结合<一>
分页 在前一部分开始时介绍的原 HTML 设计中内含分页和排序,所以根据规范完整实现该网格的任务尚未完成.我们先分页,然后再排序. ListView 控件中的分页通过引入另一个新控件 Data ...
- android笔记:ListView及ArrayAdapter
ListView用于展示大量数据,而数据无法直接传递给ListView,需要借助适配器adapter来完成. ArrayAdapter是最常用的adapter,可以通过泛型来指定要适配的数据类型.常见 ...
- “ASP.default_aspx”并不包括“DropDownList1_SelectedIndexChanged”的定义,其解决方法。
"ASP.default_aspx"并不包括"DropDownList1_SelectedIndexChanged"的定义,其解决方法. 在使用DropDown ...
- C#使用ListView更新数据出现闪烁解决办法
C#使用ListView更新数据出现闪烁解决办法 在使用vs自动控件ListView控件时候,更新里面的部分代码时候出现闪烁的情况 如图: 解决以后: 解决办法使用双缓冲:添加新类继承ListView ...
- Yii框架学习笔记(二)将html前端模板整合到框架中
选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/ ...
- 【转载】【时序约束学习笔记1】Vivado入门与提高--第12讲 时序分析中的基本概念和术语
时序分析中的基本概念和术语 Basic concept and Terminology of Timing Analysis 原文标题及网址: [时序约束学习笔记1]Vivado入门与提高--第12讲 ...
- android 在自定义的listview(有刷新加载项)列表中,数据过少时不能铺满整个屏幕时,header和footer同时显示问题
android 在自定义的listview(有刷新加载项)列表中,数据过少时,当刷新时,加载项也会显示,这是很头疼的一个问题,查阅了一些资料,总结了一个比较不错的方法: 原来代码: @Overrid ...
- ASP.NET Core 3.0 自动挡换手动挡:在 Middleware 中执行 Controller Action
最近由于发现奇怪的 System.Data.SqlClient 性能问题(详见之前的博文),被迫提前了向 .NET Core 3.0 的升级工作(3.0 Preview 5 中问题已被修复).郁闷的是 ...
- asp.net 错误 类型"xxxxx"同时存在于"xxx.dll"和"xxxx.dll" 中
http://walttoney.blog.163.com/blog/static/127685797201051112839328/错误 类型“System.Web.UI.ScriptManager ...
随机推荐
- Hive基础介绍
HIVE结构 Hive 是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机 ...
- POJ2411 - Mondriaan's Dream(状态压缩DP)
题目大意 给定一个N*M大小的地板,要求你用1*2大小的砖块把地板铺满,问你有多少种方案? 题解 刚开始时看的是挑战程序设计竞赛上的关于铺砖块问题的讲解,研究一两天楞是没明白它代码是怎么写的,智商捉急 ...
- ios开发 json数据文件的存取
将Json存进本地文件夹 NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomai ...
- 转载 https协议和http协议的区别
转载原地址: http://aajs800.blog.51cto.com/519255/109555 什么是HTTPS: HTTPS(Secure Hypertext Transfer Protoco ...
- HTML5随笔
1 首先介绍一下html5,以及为什么用html5, HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定. HTML5的设计目的是为了在移动设备上支持多媒体.HTM ...
- [BZOJ]2132: 圈地计划 最小割
圈地计划 Description 最近房地产商GDOI(Group of Dumbbells Or Idiots)从NOI(Nuts Old Idiots)手中得到了一块开发土地.据了解,这块土地是一 ...
- PowerDesigner 面向对象模型(OOM)
PowerDesigner 面向对象模型(OOM)说明 nulljavasystemstringpowerbuilderclass 目录(?)[+] 一. OOM 简介 Object- ...
- 修改Oracle Client的字符集
修改Oracle Client的字符集 找到注册表 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1下的 NLS_LANG,修改键值为SIMP ...
- 理解 traits
1.为什么使用traits? 考虑下面的需求,实现一个方法Advance(iter,n),接收一个迭代器iter和移动距离n,将iter向前移动n个距离. 分析,因为存在不同类型的迭代器,做同一件事情 ...
- 10个你可能从未用过的PHP函数(转)
1. sys_getloadavg() sys_getloadavt()可以获得系统负载情况.该函数返回一个包含三个元素的数组,每个元素分别代表系统再过去的1.5和15分钟内的平均负载. 与其让服务器 ...