回 帖 发 新 帖 刷新版面

主题:非常菜的问题!

VS.NET这个开发环境我不熟悉。
半天也看不出什么名堂。
希望你们能帮助我一下!

在VS。NET中建立了一个C#的ASP.NET应用程序
在webform1.aspx中只写进
<select id="test" runat="server">
<option selected>HTML</option>
<option>C++</option>
<option>ASP.NET</option>
</select>
在webform1.aspx.cs中只写进
private void Page_Load(object sender, System.EventArgs e)
    {
// 在此处放置用户代码以初始化页面
    string str;
    if(page.ispostback)
    {
    str=test.SelectedIndex;
        selectitem.text=str;
    }
    }

其他就没有任何我自己加进或改动的代码了.
错误:c:\inetpub\wwwroot\test1\WebForm1.aspx.cs(24): 找不到类型或命名空间名称“page”(是否缺少 using 指令或程序集引用?)

c:\inetpub\wwwroot\test1\WebForm1.aspx.cs(26): 无法将类型“int”隐式转换为“string”

c:\inetpub\wwwroot\test1\WebForm1.aspx.cs(27): 找不到类型或命名空间名称“selectitem”(是否缺少 using 指令或程序集引用?)
我只想知道第一和第三这两个错误的原因


VS.NET的*.aspx.cs文件中不是缺省有
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
为什么还找不到命名空间名称![color=000000][/color]

回复列表 (共2个回复)

沙发

if(page.ispostback)
    {
    str=test.SelectedIndex;
        selectitem.text=str;
    }
不能这样写应该是if(!IsPostBack)
    {
    str=test.SelectedIndex;
        selectitem.text=str;
    }表示头一次加载页面时执行.以下的代码就不知道了

板凳

你选择的语言应该是C#吧。
C#是大小写敏感的。page应为Page,ispostback应为IsPostBack。
selectitem是一个从来就没有定义过的变量。
C#是严格类型检查的语言,str=test.SelectedIndex一行中将整数值赋给字符串显然是不行的,应当改为str=test.SelectedIndex.ToString()。

我来回复

您尚未登录,请登录后再回复。点此登录或注册