2

我在页面上有 ext:FileUploadField。文件上传后,我需要显示该文件的链接。我动态创建了一个LinkBut​​ton,将它添加到Panel1上,我看不到LinkBut​​ton!我不知道为什么!

<ext:Panel ID="Panel1" runat="server"> 
    <Content> 
        <ext:FileUploadField ID="FileUploadField1" runat="server" EmptyText="Choose a file" FieldLabel="File" Icon="ImageAdd" /> 
    </Content> 
    <Buttons> 
        <ext:Button ID="SaveButton2" runat="server" Text="Upload"> 
            <DirectEvents> 
                <Click OnEvent="UploadClick"></Click> 
            </DirectEvents> 
        </ext:Button> 
    </Buttons> 
</ext:Panel> 


protected void UploadClick(object sender, DirectEventArgs e) 
        { 
            if (this.FileUploadField1.HasFile) 
            { 
                var attachment = new Attachment { ............ }; 
                if (UploadAttachment(attachment)) 
                { 
                    X.Msg.Show( ...... ); 

                    var linkButton = new LinkButton(); 
                    linkButton.ID = "fdsfdsfds"; 
                    linkButton.Text = attachment.Name; 
                    linkButton.NavigateUrl = "#"; 
                    linkButton.Render(); 
                    Panel1.Add(linkButton); 
                    // Panel1.Render(true); 
                     Panel1.DoLayout(true,true); 
                } 
                else 
                { 
                   //................ 
                } 

            } 
            else 
            { 
                //................ 
            } 
        }
4

2 回答 2

1

我猜你需要将它添加到面板的按钮列表而不是面板本身。如果您有合适的布局并添加第二个项目,您可能还会遇到布局问题,这将不起作用。

于 2011-08-17T02:49:01.877 回答
0

尝试使用此代码:

X.Msg.Show( ...... ); 
var linkButton = new LinkButton(); 
linkButton.ID = "fdsfdsfds"; 
linkButton.Text = attachment.Name; 
linkButton.NavigateUrl = "#"; 
linkButton.Render(Panel1, RenderMode.AddTo);

这会将链接按钮直接添加到 Panel1

于 2011-08-30T07:39:11.387 回答