Private Sub DgEditRole_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DgEditRole.EditCommand
Dim PerDdlRoleName As DropDownList = e.Item.FindControl("DdlRoleName")
Dim RoleName As String = PerDdlRoleName.SelectedItem.Text ''''''''出错的语句
Response.Write(PerDdlRoleName.SelectedItem.Text)
End Sub错误提示:未将对象引用到实例
要找的控件id DdlRoleName是绝对没有错的
dropdownlist控件我是加在datagrid的edit模板中
请问这个错误是什么原因,应该这么解决?
在线等
Dim PerDdlRoleName As DropDownList = e.Item.FindControl("DdlRoleName")
Dim RoleName As String = PerDdlRoleName.SelectedItem.Text ''''''''出错的语句
Response.Write(PerDdlRoleName.SelectedItem.Text)
End Sub错误提示:未将对象引用到实例
要找的控件id DdlRoleName是绝对没有错的
dropdownlist控件我是加在datagrid的edit模板中
请问这个错误是什么原因,应该这么解决?
在线等
if(e.Item.FindControl("DdlRoleName")!=null)
...\\这个市C#的,vb的不知道怎么写
因为dropdownlist是在editItem里的,当点击edit按钮触发EditCommand事件时,这个dropdownlist都还没有生成,肯定找不到
{
DataGrid1.EditItemIndex = e.Item.ItemIndex;
DataGrid1.DataSource = dt;//需要重新绑定
DataGrid1.DataBind();
} private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.EditItem)
{
DropDownList ddlst = e.Item.FindControl("dropdownlist1") as DropDownList;
ddlst.Items.Add("abc");//这里就可以找到
}
} private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DropDownList ddlst = e.Item.FindControl("dropdownlist1") as DropDownList;//这里也可以找到
Response.Write(ddlst.SelectedValue );
}
Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.EditCommand
Me.DataGrid1.EditItemIndex = e.Item.ItemIndex
End Sub Private Sub DataGrid1_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemCreated
Dim ddlst As DropDownList = e.Item.FindControl("dropdownlist1")
ddlst.SelectedIndex = 0
End Sub Private Sub DataGrid1_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.UpdateCommand
Dim ddlst As DropDownList = e.Item.FindControl("dropdownlist1")
Response.Write(ddlst.SelectedValue)
End Sub
Dim PerDdlRoleName As DropDownList = e.Item.FindControl("DdlRoleName")
Dim RoleName As String = PerDdlRoleName.SelectedItem.Text
Response.Write(PerDdlRoleName.SelectedItem.Text)
End Sub
这样加了,还是报那个错,同一个地方
Private Sub DataGrid1_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemCreated
if e.Item.ItemType = ListItemType.EditItem then
Dim ddlst As DropDownList = e.Item.FindControl("dropdownlist1")
ddlst.SelectedIndex = 0
end if
End Sub