Как менять программно изменить текст охвата внутри шаблона прогресса в C #?

StackOverflow https://stackoverflow.com//questions/22016603

Вопрос

У меня есть следующий обновлениеProgress:

<asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="updCampos"
    DynamicLayout="true">
    <ProgressTemplate>
        <div class="carregando">
            <span id="sAguarde">Aguarde ...</span>&nbsp;&nbsp;<asp:Image ID="Image1" runat="server" ImageUrl="~/images/loading.gif" />
        </div>
    </ProgressTemplate>
</asp:UpdateProgress>
.

Мне нужно изменить код за текстом «Aguarde ...» Содержание, которое я вложил в промежуток времени «Saguarde», но я не знаю, как получить доступ к этому расстоянию.Язык C #.

Большое спасибо за помощь.

Это было полезно?

Решение

Просто измените управление <span> с помощью ярлыка следующим образом -

<asp:Label id="sAguarde" Text="Aguarde ..." runat="server" />
.

и получить доступ к нему из CodeBehind следующим образом -

Label progressMessageLabel = UpdateProgress1.FindControl("sAguarde") as Label;
if (progressMessageLabel != null)
{
    progressMessageLabel.Text = "something";
}
.

Другие советы

You could change the span to a serverside control:

<span id="sAguarde" runat="server">Aguarde ...</span>

Then you can access it from the codebehind:

protected override void Render(HtmlTextWriter writer)
{
    if (update) // globally declared update boolean to check if the page is being updated 
    {
        HtmlGenericControl sAguarde = (HtmlGenericControl) UpdateProgress1.FindControl("sAguarde");
        sAguarde.InnerHTML = "Hi";
    }
    base.Render(writer);
}

But note that the span's id will be rendered using ASP.NET control naming conventions.

For full context, see: Changing the contents of the UpdateProgress control

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top