asp.net中自定义控件.ascx怎么引用

liu185v232 2008-02-14 12:54:13
做了个用户控件(aaa.ascx)里面有个Button单击事件按纽,希望实现按Button按钮时,包含(aaa.ascx)这个该用户控件的页面可以接收到事件.就是说:如果页面1.aspx中包含了aaa.ascx,页面2.aspx中也包含了aaa.ascx,当页面1.aspx单击Button后会产生一个值“X”在aaa.ascx上面。我通过页面1.aspx里的其他按纽跳转到页面2.aspx中去了。页面2不在需要单击button,可以直接得到“X”。页面2.aspx中的aaa.ascx要怎么做才也可以得到这个“X”


其实我做的就是用个自定义控件,做个登陆,当登陆后会有个值在这个aaa.ascx页面中保存,我很多页面都需要这个值,所以我很多页面都引用了这个自定义控件,,,但是我现在做成的是当第1个页面登陆后。进入第2个页面后它并没有登陆,自然也不会有我需要的那个值,那位大哥可以指点下。我应该如何做这个东西。
...全文
1369 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
pwtby 2009-11-26
  • 打赏
  • 举报
回复
用session比较简单
blestcc 2008-02-14
  • 打赏
  • 举报
回复
把登录信息保存在session中,然后把session的值赋给控件的某个属性,在控件中判断这个属性,根据不同的值显示不同内容
amandag 2008-02-14
  • 打赏
  • 举报
回复
方案已经给了,代码要靠你自己写啊..
liu185v232 2008-02-14
  • 打赏
  • 举报
回复
谁可以给我个更准确的答案。。我想做的也就是象CSDN上面这个登陆差不多。。。我的这个aaa.ascx就是一个登陆界面。。

当我没登陆的时候。。。其他的.aspx页面包含aaa.ascx自定义控件都会是一个没有登陆的界面。。。

当我在任意的一个.aspx页面包含aaa.ascx自定义控件登陆的时候。。。这个时候在跳到其他.aspx页面包含aaa.ascx都会有登陆的信息“X”值

我的这个aaa.ascx在其他页面都是用PlaceHolder控件存放的。。。
kbryant 2008-02-14
  • 打赏
  • 举报
回复
友情up
amandag 2008-02-14
  • 打赏
  • 举报
回复
通用的做法是使用Session保存你要的值

还有用户控件 不等于 自定义控件
蝶恋花雨 2008-02-14
  • 打赏
  • 举报
回复
用cookies。

按钮
protected void IB_Login_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{ //用户名
string u_username = this.CTB_ID.Text.Trim();

//密码
string u_password = Encrypt(this.CTB_PW.Text.Trim());

////数据验证

string sql = "select userid,state from dbo.F_user where username='" + u_username + "' and userpwd='" + u_password + "' and state='1'";
sqls.Fill_DT(sql,dt);

if (dt.Rows.Count > 0)
{
string u_userID = "";
//取出注册者的ID
string user = "select * from f_user a ,f_user b where a.userid=b.userid and a.username='" + u_username + "'";
DataTable dtuserid=new DataTable();
sqls.Fill_DT(user,dtuserid);
if(dtuserid.Rows.Count>0)
{
u_userID = dtuserid.Rows[0]["userid"].ToString();
HttpCookie myCookies = new HttpCookie("NewsUserCookies");
myCookies.Values["News_username"] = u_username;
myCookies.Values["News_userid"] = u_userID;
Response.AppendCookie(myCookies);
}
sqls.ConClose();
if (Session["url"] == "" || Session["url"] == null)
{
Response.Redirect("admin/Index.aspx?username=" + u_username + "&userid=" + u_userID + "");
}
else
{
Response.Redirect(ConfigurationSettings.AppSettings["NewsUserCookies"] + Session["url"]);
}
}
else
{
Response.Write("<script>");
MessageBox("00003", null);
Response.Write("</script>");
}
sqls.ConClose();
}


另一个页面
这样获取
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//判断是否登录
HttpCookie cookie_login = Request.Cookies["NewsUserCookies"];
if (cookie_login == null)
{
//获取http表头编码
string strurl = HttpContext.Current.Request.Url.PathAndQuery;
Session["url"] = strurl;

Response.Write("<script>alert('无效的操作!');window.location.href='../login.aspx';</script>");

}
// 判断是否登录
HttpCookie cookies = Request.Cookies["NewsUserCookies"];//cookies必须与登录是创建cookies一样
if (cookies == null)
{
// http://localhost:10666/YuJu/News/admin/login.aspx
Response.Write("<script>alert('无效的操作!');window.location.href='../login.aspx';</script>");
}
else
{
string userid = cookies["News_userid"].ToString();
string username = cookies["News_username"].ToString();
}

}
}

说的不知道适合不适合你
hbx1982 2008-02-14
  • 打赏
  • 举报
回复
把“X”存到Session里,aaa.ascx只需要到Session里取值就行!
linhl 2008-02-14
  • 打赏
  • 举报
回复
把你要的值放到Session中或静态变量中

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧