获取了DataList的记录主键值,其它字段值均好找:
http://www.cnblogs.com/insus/archive/2013/01/20/2868403.html

解决方案 »

  1.   

    用DataList里的每项都是个Item,然后你得到每项的Item对象,再用Item里的FindControl的方法去找到对应ID的控件,然后得到值
      

  2.   

    页面前台是这样的
    <asp:DataList ID="DataList1" runat="server" RepeatColumns="1">
                                        <ItemTemplate>
                                            <tr>
                                                <td>                                          
                                                    <table id="Table2" border="0" cellpadding="0" cellspacing="0" width="100%">
                                                        <tr>                                        
                                                                <td>       
                                                                    <%# DataBinder.Eval(Container.DataItem, "字段1")%>
                                                                    </td>
                                                        </tr>
                                                    </table>
                                              </td>
                                            </tr>
                                        </ItemTemplate>
                                    </asp:DataList>
    请问如何获取DataList中的某一个值?
      

  3.   

    DataList是一个数据集,你先确定,是怎样选取它的?点铵钮,还是点数据行,如后者,是单击还是双击?
    如果前者,铵钮是放在DataList行内,还是放在DataList外?
      

  4.   

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;namespace IM
    {
        public partial class WebForm17 : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    List<string> list = new List<string>();
                    list.Add("test");
                    list.Add("test1");
                    list.Add("test2");
                    list.Add("test3");                DataList1.DataSource = list.Select(x => new { 字段1 = x });
                    DataList1.DataBind();
                }
            }        protected void Button1_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < DataList1.Items.Count; i++)
                {
                    Response.Write(DataList1.DataKeys[i].ToString());
                }
            }
        }
    }<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm17.aspx.cs" Inherits="IM.WebForm17" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
         <asp:DataList ID="DataList1" runat="server" DataKeyField="字段1" RepeatColumns="1">
               <ItemTemplate>
                <tr>
                    <td>                                          
                          <table id="Table2" border="0" cellpadding="0" cellspacing="0" width="100%">
                            <tr>                                        
                                <td>       
                                 <%# DataBinder.Eval(Container.DataItem, "字段1")%>
                                 </td>
                            </tr>
                         </table>
                     </td>
                 </tr>
              </ItemTemplate>
         </asp:DataList>
            <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
        </div>
        </form>
    </body>
    </html>