日期:2014-05-19  浏览次数:20368 次

奇怪问题---------datalist 中 DataKeyField 取值不对啊。。大家帮帮~~~~
我在datalist中设置   DataKeyField= "MakeID "   MakeID   是我一个视图中的值
我在CS里  
                string   DeleID   =   mymark.DataKeyField[e.Item.ItemIndex].ToString();
这样取值怎取到的   M、K、I   之类的啊?并不是我想要的。。。。

------解决方案--------------------
string DeleID = mymark.DataKeys[e.Item.ItemIndex].ToString();

DataKeyField[i]你取的就是MakeId了,呵呵
------解决方案--------------------
楼上正解
------解决方案--------------------
string DeleID = mymark.DataKeys[e.Item.ItemIndex].ToString();

DataKeyField[i]你取的就是MakeId了,呵呵

同意
------解决方案--------------------
//给段示例代码
private void DataListView_DeleteCommand(object source, DataListCommandEventArgs e)
{
SqlConnection cn;
string strDelete;
SqlCommand cmd;

cn = new SqlConnection(connectionString);
strDelete = "delete Note Where id = @iD ";
cmd = new SqlCommand( strDelete, cn );
cmd.Parameters.Add( "@id ", SqlDbType.VarChar).Value = DataListView.DataKeys[e.Item.ItemIndex].ToString();
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
DataListView.SelectedIndex = -1;
BindDataList();
}