不会游泳

享受coding的乐趣
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

关于控件dropdownlist

Posted on 2006-07-16 08:54  pengjun  阅读(430)  评论(1编辑  收藏  举报

 <asp:dropdownlist id="DropDownList1" Runat="server" Width="155">
<asp:ListItem Value="您父亲的名字是?"></asp:ListItem>
<asp:ListItem Value="您母亲的名字是?"></asp:ListItem>
<asp:ListItem Value="您最喜欢的城市是?"></asp:ListItem>
<asp:ListItem Value="您最喜欢的电影是?"></asp:ListItem>
<asp:ListItem Value="您最喜欢的明星是?"></asp:ListItem>
</asp:dropdownlist>

用DropDownList1.SelectedItem.Text将所选择的项添加进数据库

问题:每次添加进数据库的是第一项“您父亲的名字是?”而不是所选择的项
----------------------------------------------------------------
后记:经过几天的查找、咨询,问题终于解决了,不过还是花了近5天的时间,没想到问题出在aspx文件的头部分上。

解决方法:
private void Page_Load(object sender, System.EventArgs e)
{ if (!IsPostBack)
   {ArrayList ArrCol=new ArrayList(); 
    ArrCol.Clear(); 
    ArrCol.Add("您父亲的名字是?"); 
    ArrCol.Add("您母亲的名字是?");
    ArrCol.Add("您最喜欢的人是?");
    ArrCol.Add("您最喜欢的明星是?");
    DropDownList1.DataSource=ArrCol; 
    DropDownList1.DataBind();  
   }
}

<asp:dropdownlist id="DropDownList1" Runat="server" Width="155" AutoPostBack=True></asp:dropdownlist>

问题原因分析:
两个软件生成的aspx文件头部分不同,是造成这个错误的原因。

1.Visual C#.net生成的aspx文件头部分
<!--
<%@ Page language="c#" Codebehind="reg1.aspx.cs" AutoEventWireup="false"
Inherits="myWebdisk.reg1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
  <head>
    <title>reg1</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name=vs_defaultClientScript content="JavaScript">
    <meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
  </head>
  <body MS_POSITIONING="GridLayout">
-->
2.Dreamweaver8.0生成的aspx文件头部分
<!--
<%@ Page Language="c#" ContentType="text/html" ResponseEncoding="gb2312"
CodeBehind="reg1.aspx.cs" AutoEventWireup="false" Inherits="myWebdisk.reg1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<HTML>
 <HEAD>
  <title></title>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
 </HEAD>
 <body>
-->