Help! 各位,我在写了一个用户控件,在里面定义了一个变量属性 "i",然后,我将该控件用到了主页里面去了.怎么样在主页的后台里面给该变量赋值?请高手指教.急用 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在pageload过程中给用户控件的i赋值就可以! Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '在此处放置初始化页的用户代码 UserControl.i="dd" ''给用户控件赋值,UserControl为用户控件ID End Sub 有的时候想在页面中调用这个页面的用户控件的方法有的时候想在页面中设置这个页面的用户控件中的控件的值下面是解决方案首先建立一个用户控件uc.ascx放置一个Label并且设置它的值为testthis.Label1.Text="test";在这个用户控件内加入一个方法public void aa() { this.Label1.Text="在页面中调用这个页面的用户控件的方法成功"; }创建一个webform导入这个用户控件<%@ Register TagPrefix="aa" TagName="bb" Src="uc.ascx" %>在页面中包含<aa:bb id="top" runat="server"></aa:bb>页面中放置两个按钮第一按钮事件中加入((uc)this.FindControl("top")).Label1.Text="在页面中设定用户控件中控件的值成功";//这个Label1是用户控件中的Label第二个按钮的事件中加入((uc)this.FindControl("top")).aa();以上2个按钮分别完成前面说的2个操作。上面代码中uc为用户控件的类名(也就是用户控件的名字)如果不在同一个命名控件,前面加上命名控件的名字。 控件id.i = 赋值应该可以的 大家先看一下我的代码:我在一个用户控件(DataGridView)中是这样写的一个显示图片的属性: /// <summary> /// 图片位置 /// </summary> public string ImgUrl { get { return this.Imgkeji.ImageUrl; } set { this.Imgkeji.ImageUrl=value; } }然后在index.aspx中<P align="center"><uc1:datagridview id="DataGridView1" runat="server"></uc1:datagridview></P>在index.asp.cs中有:((ServerFlat.UserCtrl.DataGridView)this.FindControl("DataGridView1")).ImgUrl="../Images/kjxw"((ServerFlat.UserCtrl.DataGridView)this.FindControl("DataGridView1")).i=10这个是图片的..也不能显示private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 sqlConn.Open(); sqlDataAdapter1.Fill(dataSet1,0,amount,"tblInformation"); DataGrid1.DataSource =dataSet1; DataGrid1.DataBind(); sqlConn.Close(); }public int amount { get { return i; } set { i =value; } } 属性加个访问器 public AccessI{ get{return i;} set{i=value;}}然后再UserControl.AccessI = ""; 难道((ServerFlat.UserCtrl.DataGridView)this.FindControl("DataGridView1")).i=10;都不可以吗?访问器 ?public int i 这个不算吗? 【分享+原创+散分】高效中英文字符串截取方法 没事我散分。哈哈。。。。。。 datagrid列标题颜色 有关定时提醒的问题。 如何查找xml文档中某个节点名的节点集合 如何设置IQueryable的类型为函数返回的类型?? Dataset 中表的列顺序可以修改吗? 我设置了刷新 页面打开的时候不会显示数据 只有点击刷新的时候显示 windows XP环境中安装VS.Net运行稳定吗?微软刚发布的ASPX编辑器哪里能够下载? 小问题 请教asp.net调用crystal report 的问题 这个问题,各位平时是怎么处理的
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
UserControl.i="dd" ''给用户控件赋值,UserControl为用户控件ID
End Sub
有的时候想在页面中设置这个页面的用户控件中的控件的值
下面是解决方案
首先建立一个用户控件uc.ascx
放置一个Label并且设置它的值为test
this.Label1.Text="test";
在这个用户控件内加入一个方法
public void aa()
{
this.Label1.Text="在页面中调用这个页面的用户控件的方法成功";
}
创建一个webform导入这个用户控件
<%@ Register TagPrefix="aa" TagName="bb" Src="uc.ascx" %>
在页面中包含
<aa:bb id="top" runat="server"></aa:bb>
页面中放置两个按钮
第一按钮事件中加入
((uc)this.FindControl("top")).Label1.Text="在页面中设定用户控件中控件的值成功";//这个Label1是用户控件中的Label
第二个按钮的事件中加入
((uc)this.FindControl("top")).aa();以上2个按钮分别完成前面说的2个操作。上面代码中uc为用户控件的类名(也就是用户控件的名字)如果不在同一个命名控件,前面加上命名控件的名字。
应该可以的
我在一个用户控件(DataGridView)中是这样写的一个显示图片的属性:
/// <summary>
/// 图片位置
/// </summary>
public string ImgUrl
{
get
{
return this.Imgkeji.ImageUrl;
}
set
{
this.Imgkeji.ImageUrl=value;
}
}
然后在index.aspx中
<P align="center"><uc1:datagridview id="DataGridView1" runat="server"></uc1:datagridview></P>
在index.asp.cs中有:
((ServerFlat.UserCtrl.DataGridView)this.FindControl("DataGridView1")).ImgUrl="../Images/kjxw"
((ServerFlat.UserCtrl.DataGridView)this.FindControl("DataGridView1")).i=10
这个是图片的..也不能显示
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
sqlConn.Open(); sqlDataAdapter1.Fill(dataSet1,0,amount,"tblInformation");
DataGrid1.DataSource =dataSet1;
DataGrid1.DataBind();
sqlConn.Close();
}public int amount
{
get
{
return i;
}
set
{
i =value; }
}
public AccessI
{
get{return i;}
set{i=value;}
}
然后再UserControl.AccessI = "";
public int i
这个不算吗?