webdn
 
  首页     免费截图     VIP会员区     广告Banner     技术文档     网站模板  
网站截图,网站每日新 !
网页模板


 

DataGrid教程(三)

【摘 要】数据访问是任何实际应用程序的核心部分,而 ASP.NET 提供了一套丰富的控件,这些控件与公共语言运行库中提供的托管数据访问 API 很好地集成在一起。

  上一例中静态填充选择框的值,但这不太适合那些值在数据库中会更改的情况。因为 select HtmlControl 也支持 IEnumerable DataSource 属性,可以转而使用选择查询动态填充选择框,这将保证数据库和用户界面,始终同步。下面的示例说明此过程。

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<html>
<script language="C#" runat="server">
    SqlConnection myConnection;
    protected void Page_Load(Object Src, EventArgs E)
    {
       myConnection = new SqlConnection("user id=sa;password=;initial
catalog=pubs;data source=jeff");       
        if (!IsPostBack)
        {
            SqlDataAdapter myCommand = new SqlDataAdapter("select distinct
State from Authors", myConnection);
            DataSet ds = new DataSet();
            myCommand.Fill(ds, "States");
            MySelect.DataSource= ds.Tables["States"].DefaultView;
            MySelect.DataBind();
        }
    }

    public void GetAuthors_Click(Object sender, EventArgs E)
    {
        String selectCmd = "select * from Authors where state =
@State";      
        SqlDataAdapter myCommand = new SqlDataAdapter(selectCmd,
myConnection);
        myCommand.SelectCommand.Parameters.Add(new SqlParameter("@State",
SqlDbType.NVarChar, 2));
        myCommand.SelectCommand.Parameters["@State"].Value = MySelect.Value;
        DataSet ds = new DataSet();
        myCommand.Fill(ds, "Authors");
        MyDataGrid.DataSource= ds.Tables["Authors"].DefaultView;
        MyDataGrid.DataBind();
    }

</script>

<body style="font: 10.5pt 宋体">
  <form runat="server">
    <h3><font face="宋体">对 DataGrid 控件的动态参数化选择</font></h3>
    选择州:
    <select id="MySelect" DataTextField="State" runat="server"/>
    <input type="submit" OnServerClick="GetAuthors_Click" Value="获取作者"
runat="server"/><p>
    <ASP:DataGrid id="MyDataGrid" runat="server"
      Width="700"
      BackColor="#ccccff"
      BorderColor="black"
      ShowFooter="false"
      CellPadding=3
      CellSpacing="0"
      Font-Name="宋体"
      Font-Size="8pt"
      HeaderStyle-BackColor="#aaaadd"
      EnableViewState="false"
    />
  </form>
</body>
</html>



电话咨询:010-60520722 QQ咨询:3792656   |   583696287   |   66733350 关于WebDN  |  站点地图  |  联系我们  |  支付方式  |  友情链接
© 2004-2008 WebDN.com 版权所有. 沪ICP备05040479号