//用户控件
public partial class Usercontrol_PageIndex2 : System.Web.UI.UserControl
{
private string _controlName = "";
public string ControlName
{
get { return _controlName; }
set { _controlName = value; }
}
}
//页面后台
public partial class CommunicationSpace : System.Web.UI.Page
{
Usercontrol_PageIndex2 buc = (Usercontrol_PageIndex2)Page.LoadControl("PageIndex2.ascx");
buc.ControlName = "aaa";//这样赋值没用,用户控件加载时ControlName还是空值
}
很困惑。希望有人指点迷津,谢谢
12 个解决方案
#1
前台注册了吗?
#2
会被刷新的 就不要用变量了啊
用ViewState
用ViewState
public string SelectedDay
{
get
{
return ViewState["selectedDay"] == null ? DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day : ViewState["selectedDay"].ToString();
}
set
{
ViewState["selectedDay"] = value;
}
}
#3
顶顶顶顶
#4
一楼这个说的 不注册他怎么能知道没赋值上去呢?
#5
Usercontrol_PageIndex2 buc = (Usercontrol_PageIndex2)Page.LoadControl("Usercontrol/PageIndex2.ascx");
buc.ControlType = "asdasdasdasdas";
请问,是这样赋值吗?
报错,未将对象引用到实例
#6
public string ControlType
{
get { return ViewState["ControlType"].ToString(); }
set { ViewState["ControlType"] = value; }
}
{
get { return ViewState["ControlType"].ToString(); }
set { ViewState["ControlType"] = value; }
}
#7
顶顶顶顶
#8
<%@ Register Src="Usercontrol_PageIndex2 .ascx" TagName="Page" TagPrefix="uc1" %>
这是你当前要引用用户控件页面的前台注册代码。
有两种方式引用usercontrol的属性。
常规方式:userpage.ProcName
前台页面赋值方式
<uc1:Page ID="userPage" runat="server" ProcName="dep"/ ProcName='<%=dep%>' ProcNameCN="money"/>
红色部分是你在usercontrol 里定义的属性
这是你当前要引用用户控件页面的前台注册代码。
有两种方式引用usercontrol的属性。
常规方式:userpage.ProcName
前台页面赋值方式
<uc1:Page ID="userPage" runat="server" ProcName="dep"/ ProcName='<%=dep%>' ProcNameCN="money"/>
红色部分是你在usercontrol 里定义的属性
#9
1。创建一个WebUserControl1.ascx 应该没有问题把
2。在其中加入属性
public string SelectedDay
{
get
{
return ViewState["selectedDay"] == null ? DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day : ViewState["selectedDay"].ToString();
}
set
{
ViewState["selectedDay"] = value;
}
}
3.注册其到web页面
<%@ Register Src="~/WebUserControl1.ascx" TagName="WebUserControl1" TagPrefix="uc2" %>
4.在页面中添加这个控件
<uc2:WebUserControl1 ID="a" Visible=true EnableViewState=true runat="server" />
5.给这个属性赋值a.SelectedDay = DateTime.Now.ToString();
6.这40分我全要了
#10
等等啊。
我去试试
#11
因为你在这里注册时候 已经设置他的ID了 比如ID="ctrlName"
那么赋值就是 ctrlName.属性名=属性值;
例如 ctrlName.SelectedDay = DateTime.Now.ToString();
上边的我都是专门为你写的 作过测试的 绝对可以运行
那么赋值就是 ctrlName.属性名=属性值;
例如 ctrlName.SelectedDay = DateTime.Now.ToString();
上边的我都是专门为你写的 作过测试的 绝对可以运行
#12
真可以嘿。
谢谢了啊。
#1
前台注册了吗?
#2
会被刷新的 就不要用变量了啊
用ViewState
用ViewState
public string SelectedDay
{
get
{
return ViewState["selectedDay"] == null ? DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day : ViewState["selectedDay"].ToString();
}
set
{
ViewState["selectedDay"] = value;
}
}
#3
顶顶顶顶
#4
一楼这个说的 不注册他怎么能知道没赋值上去呢?
#5
Usercontrol_PageIndex2 buc = (Usercontrol_PageIndex2)Page.LoadControl("Usercontrol/PageIndex2.ascx");
buc.ControlType = "asdasdasdasdas";
请问,是这样赋值吗?
报错,未将对象引用到实例
#6
public string ControlType
{
get { return ViewState["ControlType"].ToString(); }
set { ViewState["ControlType"] = value; }
}
{
get { return ViewState["ControlType"].ToString(); }
set { ViewState["ControlType"] = value; }
}
#7
顶顶顶顶
#8
<%@ Register Src="Usercontrol_PageIndex2 .ascx" TagName="Page" TagPrefix="uc1" %>
这是你当前要引用用户控件页面的前台注册代码。
有两种方式引用usercontrol的属性。
常规方式:userpage.ProcName
前台页面赋值方式
<uc1:Page ID="userPage" runat="server" ProcName="dep"/ ProcName='<%=dep%>' ProcNameCN="money"/>
红色部分是你在usercontrol 里定义的属性
这是你当前要引用用户控件页面的前台注册代码。
有两种方式引用usercontrol的属性。
常规方式:userpage.ProcName
前台页面赋值方式
<uc1:Page ID="userPage" runat="server" ProcName="dep"/ ProcName='<%=dep%>' ProcNameCN="money"/>
红色部分是你在usercontrol 里定义的属性
#9
1。创建一个WebUserControl1.ascx 应该没有问题把
2。在其中加入属性
public string SelectedDay
{
get
{
return ViewState["selectedDay"] == null ? DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day : ViewState["selectedDay"].ToString();
}
set
{
ViewState["selectedDay"] = value;
}
}
3.注册其到web页面
<%@ Register Src="~/WebUserControl1.ascx" TagName="WebUserControl1" TagPrefix="uc2" %>
4.在页面中添加这个控件
<uc2:WebUserControl1 ID="a" Visible=true EnableViewState=true runat="server" />
5.给这个属性赋值a.SelectedDay = DateTime.Now.ToString();
6.这40分我全要了
#10
等等啊。
我去试试
#11
因为你在这里注册时候 已经设置他的ID了 比如ID="ctrlName"
那么赋值就是 ctrlName.属性名=属性值;
例如 ctrlName.SelectedDay = DateTime.Now.ToString();
上边的我都是专门为你写的 作过测试的 绝对可以运行
那么赋值就是 ctrlName.属性名=属性值;
例如 ctrlName.SelectedDay = DateTime.Now.ToString();
上边的我都是专门为你写的 作过测试的 绝对可以运行
#12
真可以嘿。
谢谢了啊。