Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
У меня на MasterPage есть LinkButtonName. Когда я на странице, подключенной к этой MasterPage пишу LinkButtonName.Text= "Вася"; Visual Studio 2005 говорит, что не знает никакую LinkButtonName. Как мне получить доступ к этой кнопке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 00:21 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
К сожалению, так напрямую нельзя. Но можно так: Делаешь в классе мастер-страницы свойство (в примере: DirectShow) 'код класса Мастер-страницы.... Partial Class _Master_CountryContent Inherits System.Web.UI.MasterPage Public Property DirectShow() As Boolean 'показывать заставку или нет Get Return Me.pnlDirect.Visible End Get Set(ByVal Value As Boolean) Me.pnlDirect.Visible = Value End Set End Property ..... '/код класса Мастер-страницы.... а в странице делаешь так: 'код класса страницы.... 'отключаем заставку CType(Me.Master, _Master_CountryContent).DirectShow = False '/код класса страницы.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 01:01 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Спасибо Вам seggg за идею. Процедуру public в программном коде Master'a я написал, но вызвать ее из обычной страницы пока не удается. Вы написали: CType(Me.Master, _Master_CountryContent) но такой процедуры CType в С-Sharp'e я не знаю. Получить this.Master - это легко. Но дальше что делать не знаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 01:24 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 01:40 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Нет, уважаемый vladgrig, хотя это и заманчиво - но так не выходит: Me.Master.FindControl("LinkButton1") уже дает почему-то null Может LinkButton1 надо указывать как-то вместе с его ContentPlaceHolder'ом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 02:20 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
авторНет, уважаемый vladgrig, хотя это и заманчиво - но так не выходит: Me.Master.FindControl("LinkButton1") уже дает почему-то null неохота ночью вступать в спор - прекрасно всё выходит авторМожет LinkButton1 надо указывать как-то вместе с его ContentPlaceHolder'ом? с каким его ContentPlaceHolder'ом я так, к сожалению и непонял :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 03:19 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Ответ vladgrig. Спасибо за пример, но именно с настоящим MasterPage так, почему-то, не выходит: дает null. Кнопка сидит, разумеется, внутри своего ContentPlaceHolder'а - одной из областей, на которые разбита страница MasterPage. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 09:50 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Если в страницу, подключенную к MasterPage, добавить такую директиву Код: plaintext то можно будет писать так: Код: plaintext IsPrintedVersion - это мое public-свойство, объявленное в MasterPage (как у seggg ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 10:34 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Спасибо, Артем, за указание на новую возможность. Но я пока сделал так: вместо Вашего + включение новой директивы + if (!this.Master.IsPrintedVersion) {... ПИШУ просто типа if (!((protocol)(this.Master)).IsPrintedVersion) {... и тоже всё работает. Но всё это - вариации на путь указанный segggg. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 10:59 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Спасибо, Артем, за указание на новую возможность. Но я пока сделал так: вместо Вашего + включение новой директивы + if (!this.Master.IsPrintedVersion) {... ПИШУ просто типа if (!((protocol)(this.Master)).IsPrintedVersion) {... и тоже всё работает. Но всё это - вариации на путь указанный segggg. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 11:00 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
авторСпасибо за пример, но именно с настоящим MasterPage так, почему-то, не выходит: дает null. Кнопка сидит, разумеется, внутри своего ContentPlaceHolder'а - одной из областей, на которые разбита страница MasterPage. что значит с настоящим MasterPage? и почему должно разуметься что кнопка должна сидеть внутри своего ContentPlaceHolder'а? и для чего MasterPage должна быть разбита на какие то области? Странно всё это... Если контрол сидит внутри другого контрола - то и искатьего нужно примерно вот так: Код: plaintext 1. P.S. всё равно непонимаю, для чего на странице контенты в которые не загружаются страницы и которые используются как контейнеры для контролов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 11:35 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Спасибо Вам, vladgrig, большое! Вы мне очень помогли. Я думал, что ВСЯКИЙ элемент мастера обязан находиться в одном из PlaceHolder'ов (откуда я взял такую догму - даже не знаю). А оказывается элементы страницы могут быть вне их. Сейчас я переделываю свою главную мастер-страницу и посмотрю что выйдет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 12:08 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
незнаю может последний пост - просто усмешка... ;) и всё же: 1. не путайте ContentPlaceHolder с PlaceHolder - первый существует в мастерпаге для загрузки страниц связанных с ней, второй существует в любой странице для динамичной загрузки контролов (т.к. контрол довольно сложно загрузить в определённое место страницы не зная имени этого места). 2. дизайн мастерпаги (как и любой др. страницы) должен быть основан на таблице (каркасе) - а в этой таблице выбираем места (ячейки таблицы) где мы будем располагать контролы и куда будет вписываться контент дочерней страницы... Никак ContentPlaceHolder в качестве контейнера для контролов в мастерпаге не вписывается в указанную логику... P.S. может логика моя страдает недаработками, но используется она успешно (главное - ПОВСЕМЕСТНО ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 12:29 |
|
||
|
Как получить доступ к элементам MasterPage?
|
|||
|---|---|---|---|
|
#18+
Огромное Вам спасибо, vladgrig ! Всё получилось. Никакого null - всё нашлось. Привожу фрагмент: ((LinkButton)(this.Master.FindControl("LinkButtonName"))).Text= forum.VisitorLoginam; и ((LinkButton)(this.Master.FindControl("LinkButtonRegister"))).Enabled= false; И заодно у меня теперь на страницах, присоединенных к MasterPage стало показываться (в приглушенных тонах) содержимое заготовленных частей мастера! Большое Вам спасибо за сочувствие! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2006, 14:45 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=33926443&tid=1390467]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
74ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 409ms |

| 0 / 0 |
