大家快帮帮我吧,一个小程序的错误。

guoshaohong 2004-11-21 02:46:31
程序如下:
<%@Page Language="C#"%>

<script runat="server">
public void Button1_Click(Object obj, EventArgs e)
{
Label1.Text="You clicked<b> " + obj.Text + "</b>";
}
</script>

<html><body>
<font size="5">Sam's Teach Yourself ASP.NET in 21 Days: Day 5</font><hr><p>
<form runat="server">
<asp:Button ID="Button1" Runat="server" Text="Button1" OnClick="Button1_Click"/>
<p></p>
<asp:Label ID="Label1" Runat="server"/>
</form>
</body></html>
当我运行的时候提示:object并不包含对Text的定义。这是怎么回事呀!
...全文
100 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
guoshaohong 2004-11-21
  • 打赏
  • 举报
回复
(Button)obj.Text的确是错的但是它的意图是对的
正解:
((Button)obj).Text;
这是因为操作符优先级的问题
Hystericalboy 2004-11-21
  • 打赏
  • 举报
回复
object始终是一个箱子,壳子而已,内容还是Button的...
oldmoon 2004-11-21
  • 打赏
  • 举报
回复
当进行类型转换后它知道是哪一个控件不是说明已经传到函数里了吗?

电脑代替不了人脑!


Button)obj.Text 没见过还可以用这种方法!而且测试之后,依然是:编译器错误信息: CS0117: “object”并不包含对“Text”的定义

源错误:



行 4: public void Button1_Click(Object obj, EventArgs e)
行 5: {
行 6: Label1.Text="You clicked<b> " + (Button)obj.Text + "</b>";
行 7: }
行 8: </script>


源文件: E:\ASP.net自写程序\c.aspx 行: 6

guoshaohong 2004-11-21
  • 打赏
  • 举报
回复
谢谢大家,我现在经过类型转换解决了这个问题
可是我想问的是,当产生单击事件后它在调用Button1_Click函数的时候,不是把Button对象传进去了吗?为什么还要进行类型转换?当进行类型转换后它知道是哪一个控件不是说明已经传到函数里了吗?
accpyy 2004-11-21
  • 打赏
  • 举报
回复
obj是一个对象(object)类型的变量,不包含.Text的属性,所以提示你object并不包含对Text的定义,对象类型的变量每次在使用的时候都必须要进行转换
wula0010 2004-11-21
  • 打赏
  • 举报
回复
有没有搞错?直接Label1.Text="You clicked<b> "+Button1.text不就解决了??????
hjiay 2004-11-21
  • 打赏
  • 举报
回复
怎么不在代码隐藏中(.CS文件)中写呢,不是简单多了吗
listhome 2004-11-21
  • 打赏
  • 举报
回复
Object obj

这个说的是事件源!
是object型的数据
由于你点的是Button所以
(Button)obj
转成Button


这个例子不知道什么用意!
listhome 2004-11-21
  • 打赏
  • 举报
回复
你在那本破书上找的程序!有这么教人的吗?

Label1.Text="You clicked<b> " + (Button)obj.Text + "</b>";
guoshaohong 2004-11-21
  • 打赏
  • 举报
回复
那要怎么样用那?能否告诉我呀
luluso 2004-11-21
  • 打赏
  • 举报
回复
obj.Text 不能这样用text的.

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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