我做了一个控件,有一个ID属性,按传入的ID显示相关的数据
然后我把这控件拖进了datalist里,然后把ID属性得绑定
id='<%#DataBinder.Eval(Container.DataItem,"ID") %>'
开始显示都正常但是当我页面被按钮点击做回置动作(就是postback)
把datalist的DataSource改变一下重新绑定以后,ID就传不到控件里去了!
怎么回事?急,请高手指教!
然后我把这控件拖进了datalist里,然后把ID属性得绑定
id='<%#DataBinder.Eval(Container.DataItem,"ID") %>'
开始显示都正常但是当我页面被按钮点击做回置动作(就是postback)
把datalist的DataSource改变一下重新绑定以后,ID就传不到控件里去了!
怎么回事?急,请高手指教!
解决方案 »
- asp.net mvc 过滤器 获取参数问题
- 关于repeater linkbutton
- asp.net 怎么进行数据库的倒序调用?
- 没学过JS,问个简单的赋值问题
- 上传服务器后出现的问题
- 在asp.net,GridView的模版列中加入按钮,触发按钮事件后,如何获取该行的某个值?
- 求教:为什么image空间显示的图像会先出现后又消失??在线等!!
- ◎◎◎时间2004-12-15 11:20:33在DataGrid中绑定的时候显示的格式要为2004/12/15怎么弄呀?◎◎◎
- DataGrid中如何根据字段值显示文字?
- 很多网站有一个跟踪功能是什么做的呀?
- 关于datagrid
- 求一个插入数据库数据的判断方法?
是放到if(!Page.IsPostBack)
之中了还是之外了?
DataBinder();
}
if ( !isPostBack ){
绑定datalist
}
//显示正常然后在一个button的Click方法里重新给datalist的datasource赋了值
然后再重新绑定
可是每次button被单击后也面返回,datalist里的控件ID接收不到新的值啊!
再说...每一个页面都保存一个dataset多耗内存啊!
我那个控件写了个ID属性,按ID传入的值查出要显示的东西需要的东西
我把它仍进页面的datalist模板里,然后把ID属性得绑定
id='<%#DataBinder.Eval(Container.DataItem,"ID") %>' 就是我重新绑定的时候那个ID值传不进控件里,不知何故!
-------------
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body text="#00000">
<form id="form1" runat="server">
<div>
<asp:DataList ID="DataList1" runat="server" RepeatColumns="4" RepeatDirection="Horizontal"
Width="507px">
<ItemTemplate>
<uc1:showitem ID="Showitem1" runat="server" itemID='<%#DataBinder.Eval(Container.DataItem,"ID") %>' />
<%--这就是用户控件,它有一个itemID属性(这个属性是自己写的),控件按接受到的itemID值来查出该显示的内容!--%>
<%--我将itemID属性绑定到了datalist的数据源上,第一次显示正常!--%>
</ItemTemplate>
</asp:DataList>
</div>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="按日期排序" Width="79px" />
<%--这是一个按钮,用户点了以后,将会执行Button1_Click方法!--%>
<%--点完这个按钮以后,datalist中的用户控件中的itemID属性就接受不到值了! --%>
</form>
</body>
</html>
-------------------------------------------------------------------------------
.aspx.cs 部分
-----------------
public partial class ceshiwenjianjia_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.DataList1.DataSource = operatedata.select_ID();
this.DataList1.DataBind();
//这里是对datalist.datasource的初始绑定!
//operatedata.select_ID();是我自己写的类和方法,返回的是一个datatable
//这里一切正常显示!
}
}
protected void Button1_Click(object sender, EventArgs e)
{
this.DataList1.DataSource = operatedata.select_ID("data");
this.DataList1.DataBind();
//当用户点击页面上的按扭时,将datalist.datasource值重新绑定成另一个内容的datatable
//operatedata.select_ID("data");是我自己写的类和方法,这个是带参数的方法
//当点击到这的时候,用户控间中的itemID属性就接受不到值了!
}
}这个问题搞了N久了,高手快快出现,帮我解决一下啊`~~~狂晕!!!
this.DataList1.Controls[0].DataBind();这样写?
还是不行!
应该怎么写?