Я использую Visual Studio 2010, а для базы данных использую Entity Framework 4.
На моей странице у меня есть 3 вкладки, а на второй вкладке я использовал представление сетки для отображения сведений о сотруднике. В этом представлении сетки есть 2 кнопки изображения: одна для удаления, другая для редактирования. Я хочу открывать всплывающее окно всякий раз, когда я нажимаю кнопку «Редактировать изображение».
Проблемы 1. Всплывающее окно появляется только на секунду. 2. Возможность получить индекс строки представления сетки. Но никакое значение не передается в другое текстовое поле, оно показывает нулевое значение, т.е. name0.Text = ""
На моей странице .aspx у меня есть следующее
Для кнопки изображения
<asp:ImageButton ID="edit" runat="server" CommandArgument='<%# Bind("EmpID")%>' CommandName="edituser" ImageUrl="image/images.jpg" ToolTip="Edit User Details" OnClick="EditUser_Clicked"> </asp:ImageButton>
Для ModalPopupExtender
<asp:ToolkitScriptManager ID="Toolkitmgr" runat="server"></asp:ToolkitScriptManager>
<asp:HiddenField ID="EmpID" runat="server"
onvaluechanged="EmpID_ValueChanged"/>
<asp:ModalPopupExtender ID="mpedit" DropShadow="true" BackgroundCssClass="modalBackground"
PopupControlID="pnedit" CancelControlID="btnCancel"
runat="server" TargetControlID="EmpID"></asp:ModalPopupExtender>
<asp:Panel runat="server" ID="pnedit" CssClass="modalPopup" Style="display: block;width:525px">
***Some Code***
</asp:Panel>
В коде на стороне сервера для события EditUser_Clicked у меня есть следующее:
protected void EditUser_Clicked(object sender, EventArgs e)
{
ImageButton btndetails = sender as ImageButton;
GridViewRow row = (GridViewRow)btndetails.NamingContainer;
lblId.Text = GridView1.DataKeys[row.RowIndex].Value.ToString();
name0.Text = row.Cells[1].Text;
desig0.Text = row.Cells[2].Text;
dob0.Text = row.Cells[3].Text;
email0.Text = row.Cells[4].Text;
country0.Text = row.Cells[5].Text;
city0.Text = row.Cells[6].Text;
add0.Text = row.Cells[7].Text;
hq0.Text = row.Cells[8].Text;
rbtnListGender0.Text = row.Cells[9].Text;
mobno0.Text = row.Cells[10].Text;
this.mpedit.Show();
}
Код работает без ошибок, но модальное всплывающее окно не отображается. Пожалуйста, помогите мне найти мою ошибку.