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

パネル自体ではなく、パネルのボタンリストに追加する必要があると思います。また、レイアウトに合わせて 2 番目のアイテムを追加すると、レイアウトの問題が発生する可能性がありますが、これは機能しません。

于 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 に答える