Я пытаюсь передать значение переменной из одной страницы на другую, используя кросс страницы после обратной с помощью этого кода:Cross отправки сообщений не работает
на page1:
<asp:TextBox ID="changepwd" runat="server"></asp:TextBox>
<asp:Button ID="ChangePassword" runat="server" Text="Change Password"
PostBackUrl="~/Page2.aspx" />
Я назначен его значение во время выполнения из базы данных в файле CS, как: changepwd.Text = dataSet.Tables[0].Rows[0]["empPassword"].ToString();
на странице 2: в случае загрузки страницы:
protected void Page_Load(object sender, EventArgs e)
{
if (PreviousPage != null && PreviousPage.IsCrossPagePostBack)
{
TextBox txt = (TextBox)PreviousPage.FindControl("changepwd");
TextBox1.Text = txt.Text;
}
}
но я не получаю значение с предыдущей страницы. Я получаю значение как null
. На стр. 1 Я правильно получаю значение из базы данных, но он не передается на страницу 2. Не могли бы вы рассказать мне, почему?
Является ли ваше текстовое поле непосредственно в контейнере имен страницы 1 или в каком-либо другом элементе управления на странице? [Документация] (http://msdn.microsoft.com/en-us/library/ms178139 (v = vs.100) .aspx) говорит: * Метод FindControl находит элементы управления в текущем контейнере имен. Если элемент управления, который вы ищете, находится внутри другого элемента управления (как правило, внутри шаблона), вы должны сначала получить ссылку на контейнер, а затем выполнить поиск в контейнере, чтобы найти элемент управления, который хотите получить. * – Netricity
нет. другой контроль – Seema
вы используете мастер-страницы? – Alok