powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / .ascx и Page Life Cycle?
7 сообщений из 7, страница 1 из 1
.ascx и Page Life Cycle?
    #34036274
TomKa_t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Необходимо создать контрол таким образом, чтобы он брал значение с Web формы, в которую "встраивается". Создаю User Control ctrlXml.ascx, включающий в себя логику по получению xml'я в зависимости от пар-ра strContent. Затем располагаю контрол ctrlXml.ascx на странице customers.aspx, на которой помимо прочих контролов есть TextBox tbGetXml и Button btnGetXml. При нажатии на кнопку, значение tbGetXml "передается" в пар-р strContent. Все бы было хорошо если б не "порядок":
- сначала происходит событие Page_Load User Control'а
- затем происходит Page_Load страницы (customer.aspx)
- и только после этого происходит событие btnGetXml_Click.

Таким образом знач-е strContent "устанавливается" после того как User Control прорисовался. Т.е. его содержимое как бы независимо от знач-я, введенного пользователем в tbGetXml. А мне надо, чтобы зависело. Ну сохранять знач-е при постбэке можно с помощью ViewState и свойства для чтения и записи. Может можно какой-нибудь Bind совершить?

Возможно путаюсь в терминологии. Но, надеюсь, что изложила суть проблемы. Может кто-нибудь может подсказать в каком направлении "копать"?
...
Рейтинг: 0 / 0
.ascx и Page Life Cycle?
    #34037507
Dimon aka Manowar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Покажи плз код, а то что-то непонятно что от чего зависит и что у тебя не рисуется.

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
...
Рейтинг: 0 / 0
.ascx и Page Life Cycle?
    #34037893
TomKa_t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделала следующим образом (выглядит "криво", но работает):

ctrlXml.ascx - содержит один xml-контрол - xmlCtrl
CodeBehind ctrlXml.ascx :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
public partial class ctrlXml : System.Web.UI.UserControl
{
    protected string strURL = "http://somewhat.ru/content.jsp?content=";
    private string strContent;
    public string StrContent
    {
        get
        {
            return strContent;
        }
        set
        {
            strContent = value;
            XmlDocument xmlDoc = new XmlDocument();
            try
            {
                xmlCtrl.TransformSource = "~/content.xsl";
                strURL += HttpUtility.UrlEncode(strContent, Encoding.GetEncoding("windows-1251"));
                xmlDoc.Load(strURL);
                xmlCtrl.Document = xmlDoc;
            }
            catch
            {
                xmlCtrl.Visible = false;
            }
        }
    }

CodeBehind Web-формы Default.aspx, на которой "обитает" User Control:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
      
    }
    protected void btnSearch_Click(object sender, EventArgs e)
    {
        if (tbSearch.Text != "")
        {
            ctrlXml.StrContent = tbSearch.Text;
        }
    }
}

Может есть какой другой - более правильный путь? (Как-то кажется неправильным в set свойстве прописывать код, который по идее должен содержаться в Page_Load самого User Control'а.)
...
Рейтинг: 0 / 0
.ascx и Page Life Cycle?
    #34037920
TomKa_t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри, писАла все заново и названия трансформировались немного. Т.е.
TextBox tbGetXml стал называться tbSearch и Button btnGetXml = btnSearch соотв-но.
...
Рейтинг: 0 / 0
.ascx и Page Life Cycle?
    #34037928
вапще все неправельно!
не делой таг никада!
делой таг:
Код: plaintext
1.
<module:announcement runat="server" OnLoad= "PutId" />
Код: plaintext
1.
2.
3.
4.
5.
protected void PutId(object sender, EventArgs e)
{
    Announcement uc = (Announcement)sender;
    uc.Ids = id;
}
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
        private String id = String.Empty;
        public String Ids
        {
            get { return id; }
            set { id = value; }
        }

        public Announcement()
        {
            this.PreRender += delegate
            {
                if (!IsPostBack)
                {
                    //you code
                }
            };
        }

з.ы. пхотку в студию!
...
Рейтинг: 0 / 0
.ascx и Page Life Cycle?
    #34037963
TomKa_t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сенкс! Сейчас попробую :).
...
Рейтинг: 0 / 0
.ascx и Page Life Cycle?
    #34037987
TomKa_tСенкс! Сейчас попробую :).
про пхотку не зобудь!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / .ascx и Page Life Cycle?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]