DataGrid學習二
2024-07-21 02:22:37
供稿:網友
 
這例顯示可以如何修改使用從 select htmlcontrol 傳遞的值所選擇的數據。sqldataadapter 維護一個可用于用值替換變量標識符(由名稱前的"@"表示)的 parameters 集合。在該集合中添加一個指定參數的名稱、類型和大小的新 sqlparameter,然后將它的 value 屬性設置為選擇的值。
在aspx的html代碼里加入下面的代碼:
<body ms_positioning="gridlayout">
<form runat="server" id="form1">
<h3><font face="宋體">對 datagrid 控件的參數化選擇</font></h3>
選擇州:
<select id="myselect" runat="server" name="myselect">
<option selected>ca</option>
<option>in</option>
<option>ks</option>
<option>md</option>
<option>mi</option>
<option>or</option>
<option>tn</option>
<option>ut</option>
</select>
<input type="submit" value="獲取作者" runat="server" id="submit1" name="submit1"><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>
在aspx.cs文件里加入下面的代碼:
private void submit1_serverclick(object sender, system.eventargs e)
{
string strconn="user id=sa;password=;initial catalog=pubs;data source=jeff";
sqlconnection myconnection = new sqlconnection(strconn);
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, "作者");
mydatagrid.datasource= ds.tables["作者"].defaultview;
mydatagrid.databind();
}