Правильно реализуйте webpart с обратной передачей?

Боюсь, что у сканера нет возможности взять информацию заголовка из другого файла.

Однако вы можете написать склеивающее задание для переименования столбцов.

df = dyf.toDF ()
oldColumns = df.schema.names
newColumns = #cols из заголовочного файла
df = Reduce (lambda df, idx: df.withColumnRenamed (oldColumns [idx], newColumns [idx]), xrange (len (oldColumns)), df)

6
задан noocyte 17 February 2009 в 09:46
поделиться

4 ответа

Походит на проблему синхронизации события ASP.NET. Попытайтесь назвать EnsureChildControls () в событии загрузки страницы. Это гарантирует, что Ваш CreateChildControls () метод называют, и Ваши средства управления добавляются к странице перед сообщением назад, события обрабатываются. Если Ваши средства управления будут сначала добавлены на этапе PreRender или Рендеринга, то это слишком опоздает в них для забирания сообщения назад данные. Вы не будете затем видеть изменения перед загрузкой следующей страницы.

3
ответ дан 17 December 2019 в 07:09
поделиться

Возможно, это сообщение в блоге могло бы помочь Вам понять жизненный цикл webpart лучше и решить Вашу проблему. http://platinumdogs.wordpress.com/2008/10/14/sharepoint-webpart-lifecycle-events/

1
ответ дан 17 December 2019 в 07:09
поделиться

Вот предложение. В любом случае это работает для меня.

using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Skaar.UI
{
    public class PostBackWebPart:WebPart
    {
        private Literal literal;
        private TextBox textBox;
        protected override void OnInit(System.EventArgs e)
        {
            base.OnInit(e);
            literal=new Literal();
            literal.Mode = LiteralMode.PassThrough;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
            Controls.Add(literal);
            textBox=new TextBox();
            textBox.AutoPostBack = true;
            Controls.Add(textBox);
            textBox.TextChanged += textBox_TextChanged;                                                                                                                                                                                                                                                                                                                                      
        }

        void textBox_TextChanged(object sender, System.EventArgs e)
        {
            literal.Text = string.Format("<h1>{0}</h1>", textBox.Text);
        }
    }
}
0
ответ дан 17 December 2019 в 07:09
поделиться

Вы могли всегда использовать панель обновления Ajax, отбрасывать Ваш элемент управления литерал в этом и называть UDP.Update на панели обновления. Также с Вашей начальной проверкой в качестве примера Вы имеете runat="server" на Вашем элементе управления литерал. Необходимо смочь добавить изменение в событии Page_Load, и это должно появиться на webpart.

0
ответ дан 17 December 2019 в 07:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: