我无法获得DataList的索引,该索引位于DataList内部。
我在DataList里面有一个DataList。
为了澄清形象:
<DataList ID="A">
<DataList ID="B">
</DataList>
</DataList>我需要选择DataList B的索引值,以便在MySql表中使用它。
我试图在CS中通过以下方法获得索引值:
DataList BDL = (DataList)e.Item.FindControl("B");
int Index = BDL.DataKeys[e.Item.ItemIndex].ToString();但是它总是返回以下错误: System.NullReferenceException:‘对象引用没有设置为对象的实例。’
BDL为空。
protected void BDataList_ItemCommand(object source, DataListCommandEventArgs e)
{
DataList BDL= (DataList)e.Item.FindControl("BDataList");
int index = e.Item.ItemIndex;
MyLabel.Text = "" + BDL.SelectedIndex;
}
<DataList ID="A" OnItemDataBound="ADataList_ItemDataBound" OnItemCommand="ADataList_ItemCommand" DataKeyField="ID">
<DataList ID="B" OnItemCommand="BDataList_ItemCommand" DataKeyField="ID">
</DataList>
</DataList>发布于 2019-05-11 15:18:05
我只需要做
DataList BDL = e.Item.NamingContainer as DataList;发布于 2019-04-27 13:54:46
DataList BDL = (DataList)e.Item.FindControl("B");
int Index = BDL.DataKeys[BDL.Item.ItemIndex].ToString();我想你对两个数据表使用了相同的索引。这个代码可能不适合您,但是您的algoritm应该是这样的:
https://stackoverflow.com/questions/55318318
复制相似问题