请教关于用户控件与页面控件值问题 你的设计思路都已经错了。如果要你要的效果,将你页面的Label传给用户控件,然后在用户控件中操作 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果你希望触发UserControl的事件来给UserControl外的控件赋值的话,那么第一、你的UserControl中一定要有可以返回这个值的方法或属性第二、可以使用lbl.Text = UserControlObject.方法或属性来进行赋值说得具体点儿,就是当你点击UserControl中的某个按钮或其他的控件时,触发UserControl中的某个方法来得到返回值,或通过这个方法给UserControl中自定义的属性赋值,然后再将这个返回值赋给lbl Sorry,上面的解答在逻辑上存在一定的问题。尝试一下这种方式,看是否可以达到你要的效果在UserControl中定义一个存放返回值的属性ResultValue,button的点击事件中为这个属性赋值然后在UserControl的父页面Page_Load事件中添加代码如下(假设UserControl的名字为DemoControl)void Page_Load(...){ ... if(IsPostBack) { lbl.Text = (DemoControl.ResultValue == null) ? "no value result!" : DemoControl.ResultValue; }} 我的页面上是一个lbl用来显示分数的,同一个用户控件在页面上使用了好多个,但每个都有不同意思,但无论点击那个改变页面上的lbl的分数都是一样一样的lbl都是减1,楼主的方法好像不好做吧,这个用户控件一共在页面上使用了36个 这个分数是从数据库中得到的,但是在未提交之前是不能更改数据库的,只是修改一下表单上的值而已,等提交后才能作最终修改,分数是在页面上,在用户控件上修改分数lbl的的值,由于在页面上使用这个用户控件36个对象,但是不管是那个对象都是对页面lbl减1 如果是这样的话,建议你使用脚本在前台实现吧。在父页面中添加如下方法function demo(){ var lbl = document.getElementById("lbl"); lbl.innerText = parseInt(lbl.innerText)-1;}在UserControl的Button上添加客户端事件响应onclick="demo();" 其实就是用this.page.findcontrol就行 gmail登录 正在加载 实现 gooogle地图接口 简单到不行的问题 江湖救急 高手来!! 由于目标机器积极拒绝,无法连接。 || 我在线等啊 关于下拉菜单同时添加两种不同的数据 帮帮忙 DataGrid 多表显示的问题 !! 请高手来解答 datagrid中的两个dropdown如何互动? 三级或多级联实现 怎么在aspx叶面中调用别的名称空间(或别的类)中的函数 在线编辑器中插入一张图片,怎么获取文件名,发呆一整天了 我想在图片上添加一个label控件,怎么做
第一、你的UserControl中一定要有可以返回这个值的方法或属性
第二、可以使用lbl.Text = UserControlObject.方法或属性来进行赋值说得具体点儿,就是当你点击UserControl中的某个按钮或其他的控件时,触发UserControl中的某个方法来得到返回值,或通过这个方法给UserControl中自定义的属性赋值,然后再将这个返回值赋给lbl
在UserControl中定义一个存放返回值的属性ResultValue,button的点击事件中为这个属性赋值然后在UserControl的父页面Page_Load事件中添加代码如下(假设UserControl的名字为DemoControl)
void Page_Load(...)
{
...
if(IsPostBack)
{
lbl.Text = (DemoControl.ResultValue == null) ? "no value result!" :
DemoControl.ResultValue;
}
}
function demo()
{
var lbl = document.getElementById("lbl");
lbl.innerText = parseInt(lbl.innerText)-1;
}
在UserControl的Button上添加客户端事件响应onclick="demo();"